Los criminales de Gotham City huyen despavoridos, porque Batman mantiene a salvo a los buenos ciudadanos de Gotham. La película comienza con una banda de hombres con máscaras de payaso que irrumpen en el banco donde la mafia guarda gran parte de su dinero. El cerebro del atraco es alguien llamado el Joker. Al final del atraco, el Joker llega y pone una granada en la boca del director del banco.
Sin saber de la presencia del Joker en su ciudad, Batman y el nuevo fiscal del distrito, Harvey Dent, trabajan junto al teniente Gordon para acabar de una vez por todas con las últimas empresas de blanqueo de dinero de la mafia. Creen que han acabado definitivamente con el blanqueo y el crimen en la ciudad, hasta que el Joker aparece para sembrar el caos. El Joker asesina a un juez, coloca una bomba en un hospital y lo hace explotar, y empieza a cargarse a inocentes de Gotham uno a uno hasta que Batman revela su identidad.
Batman está decidido a contraatacar al Joker. Durante un tiempo, parece que mantiene la ventaja, hasta que su mejor amiga Rachel, que también resulta ser la novia de Harvey Dent, muere en el fuego cruzado. Cuando la mitad de la cara de Harvey Dent se quema en una explosión, el Joker le lleva al lado oscuro, animándole a buscar venganza por la muerte de Rachel. Harvey adopta un nuevo nombre, Dos Caras, y Batman se encuentra con dos locos a los que enfrentarse mientras se avecina la destrucción de Gotham.
El Joker ha estado planeando claramente su toma de control de Gotham durante bastante tiempo, y parece estar al menos dos pasos por delante de Batman en cada momento. Después de lanzar una amenaza a toda la ciudad de Gotham, comanda dos transbordadores y llena uno con ciudadanos y otro con criminales convictos. También llena ambos transbordadores con explosivos. Le da a cada barco un detonador maestro que hará explotar el otro ferry. Si nadie detona el otro barco antes de la medianoche, dice, hará explotar ambos barcos. Batman consigue finalmente someter al malvado payaso y ninguno de los pasajeros de los ferrys resulta herido.
Harvey sigue del lado del Joker, algo de lo que Batman no se dio cuenta en su prisa por acabar con el propio Joker. Mientras Batman se ha enfrentado al Joker, Gordon se entera de que su familia ha sido tomada como rehén por Dos Caras. Cuando Gordon va a salvarlos, Dos Caras tumba a Gordon en el suelo y luego agarra a su hijo pequeño, Jimmy, planeando lanzar una moneda para decidir el destino del niño por azar. De repente, llega Batman y le ordena que se detenga, diciéndole que está culpando a las personas equivocadas por la muerte de Rachel. Dos Caras lanza entonces la moneda por Batman. La moneda cae con la cara sucia hacia arriba, así que le dispara. La lanza para sí mismo. Sale el lado limpio. Entonces retoma su plan original y la lanza para el pequeño Jimmy. En el momento definitivo, Batman se levanta y aborda a Dos Caras, haciéndolo caer por una cornisa.
Batman se lamenta del hecho de que el Joker aún haya ganado porque corrompió a Harvey Dent, dividió su alianza para siempre y destruyó a una de las mejores personas de Gotham. Si la gente de Gotham llega a descubrir los males que ha hecho Dos Caras, el futuro de Gotham se verá comprometido. Así, Batman decide asumir la culpa de los asesinatos que Dent cometió como Dos Caras, para que el Joker no pueda ganar y la ciudad siga en paz.
Gordon se ve destruyendo el símbolo del murciélago sobre el edificio del MCU y luego comienza a perseguir a Batman, que huye. Gordon le dice a su hijo que aunque Dent era el héroe que Gotham necesitaba, Batman es el héroe que Gotham merece. Se inicia una persecución de Batman y éste se aleja a toda velocidad en su Batpod. Gordon declara: «Es un guardián silencioso. Un protector vigilante. Un Caballero Oscuro».