Christopher Nolan’s second Batman adventure is the rare blockbuster that left me engaged and thoughtful instead of bored and bummed out. His first, Batman Begins (2005), reconnected the masked superhero with his 1939 comic-book roots as a solitary, pissed-off, vaguely satanic vigilante; this time around Nolan turns crime-ridden Gotham City into a mirror image of 21st century America, a metropolis where the democratic institutions are crumbling and the only options seem to be anarchy or totalitarianism. Exploiting this social breakdown is the Joker, grimly reimagined here as a sociopath in cruddy pancake and played with scene-stealing drollery by the late Heath Ledger. The moral dilemmas are perfectly fused with the amped-up action and outsize characters, but they’re impossible to miss: like all of us, the people of Gotham have to protect themselves from evil without falling prey to it. With Christian Bale, Michael Caine, Aaron Eckhart, Gary Oldman, and Maggie Gyllenhaal.