Die Kriminellen von Gotham City haben Angst, denn Batman beschützt die guten Bürger von Gotham. Der Film beginnt damit, dass eine Bande von Männern mit Clownsmasken in die Bank einbricht, in der die Mafia einen Großteil ihres Geldes aufbewahrt. Der Drahtzieher des Raubes ist ein Mann namens Joker. Am Ende des Raubes taucht der Joker auf und steckt dem Bankdirektor eine Granate in den Mund.
Batman und der neue Staatsanwalt Harvey Dent sind sich der Anwesenheit des Jokers in ihrer Stadt nicht bewusst und arbeiten zusammen mit Lieutenant Gordon daran, die letzten Geldwäschereien der Mafia ein für alle Mal aus dem Verkehr zu ziehen. Sie glauben, dass sie die Geldwäsche und das Verbrechen in der Stadt endgültig gestoppt haben – bis der Joker auftaucht und Chaos stiftet. Der Joker ermordet einen Richter, platziert eine Bombe in einem Krankenhaus und jagt es in die Luft, und beginnt, einen Unschuldigen nach dem anderen in Gotham umzubringen, bis Batman seine Identität aufdeckt.
Batman ist entschlossen, gegen den Joker zurückzuschlagen. Eine Zeit lang scheint es, als würde er die Oberhand behalten, bis seine beste Freundin Rachel, die zufällig auch Harvey Dents Freundin ist, im Kreuzfeuer getötet wird. Als Harvey Dents halbes Gesicht bei einer Explosion verbrannt wird, bringt der Joker ihn auf die dunkle Seite und ermutigt ihn, sich für Rachels Tod zu rächen. Harvey nimmt einen neuen Namen an, Two-Face, und Batman muss sich mit zwei Verrückten auseinandersetzen, während die Zerstörung Gothams immer näher rückt.
Der Joker plant seine Übernahme von Gotham schon seit geraumer Zeit und scheint Batman immer mindestens zwei Schritte voraus zu sein. Nachdem er eine Bedrohung für die gesamte Stadt Gotham ausgesprochen hat, requiriert er zwei Fähren und füllt eine mit Bürgern und eine mit verurteilten Kriminellen. Außerdem füllt er beide Fähren mit Sprengstoff. Er gibt jeder Fähre einen Haupt-Zünder, der die andere Fähre zur Explosion bringt. Wenn bis Mitternacht niemand die andere Fähre in die Luft sprengt, sagt er, wird er beide Fähren in die Luft jagen. Batman gelingt es schließlich, den bösen Clown zu überwältigen, und keiner der Passagiere auf den Fähren kommt zu Schaden.
Harvey ist immer noch auf der Seite des Jokers, was Batman in seiner Eile, den Joker selbst auszuschalten, nicht bemerkt hat. Während Batman dem Joker gegenübersteht, erfährt Gordon, dass seine Familie von Two-Face als Geisel genommen wurde. Als Gordon sie retten will, schlägt Two-Face Gordon zu Boden und schnappt sich dann seinen kleinen Sohn Jimmy, um eine Münze zu werfen, die über das Schicksal des Jungen entscheiden soll. Plötzlich taucht Batman auf und befiehlt ihm, damit aufzuhören, da er die falschen Leute für Rachels Tod verantwortlich macht. Daraufhin wirft Two-Face die Münze für Batman. Sie landet mit der schmutzigen Seite nach oben, also erschießt er ihn. Er wirft sie für sich selbst. Sie kommt mit der sauberen Seite nach oben. Dann nimmt er seinen ursprünglichen Plan wieder auf und wirft sie für den kleinen Jimmy. Im letzten Moment steht Batman auf, greift Two-Face an und stößt ihn über einen Vorsprung.
Batman beklagt die Tatsache, dass der Joker trotzdem gewonnen hat, weil er Harvey Dent korrumpiert, ihre Allianz für immer aufgelöst und einen der besten Menschen in Gotham zerstört hat. Wenn die Menschen in Gotham jemals das Unrecht entdecken, das Two-Face begangen hat, ist die Zukunft Gothams gefährdet. Daher beschließt Batman, die Schuld für die Morde, die Dent als Two-Face begangen hat, auf sich zu nehmen, damit der Joker nicht gewinnen kann und die Stadt friedlich bleibt.
Gordon wird gesehen, wie er das Bat-Symbol über dem MCU-Gebäude zerstört und beginnt dann, Batman zu verfolgen, der davonläuft. Gordon erklärt seinem Sohn, dass Dent zwar der Held war, den Gotham brauchte, Batman aber der Held ist, den Gotham verdient. Eine Fahndung nach Batman wird eingeleitet, und er rast in seinem Batpod davon. Gordon erklärt: „Er ist ein stiller Wächter. Ein wachsamer Beschützer. Ein dunkler Ritter.“