The Best DC Movies, Ranked
Ranking Marvel movies would be an easy post, and has been done by countless other writers, but I’ve never been inspired to do one. I’m not saying I never will (quotas to fill, kids to feed, etc.), but there’s a sameness to Marvel movies which makes them a little dull to argue over. They’ve gotten worse in recent years (to the point that the “are superhero movies dead?” argument feels less sensational than ever) but for the most part they put out a consistently “fine” product. The directors’ names change, but the tone and style of the movies never seems to (in probably related news: Disney seems to have a habit of firing their most interesting directors).
Marvel’s consistency of product is admirable from a business standpoint, like McDonald’s cheeseburgers, but from a fodder-for-movielovers-who-like-to-fight-over-things standpoint, incredibly dull. DC, on the other hand, seemed to give their directors much more free reign (though notably, they do occasionally come in midway through and start monkeying around, leading to years-long fan campaigns and entire re-released movies). That arguably shakier business model has given us an arguably higher quality ceiling and lower floor. There are DC movies I love, and ones where I would burn the negatives and salt the hard drives if it was up to me.
DC brought in James Gunn late last year to be their version of Kevin Feige, and hopefully give the DCEU a more consistent tone and vision. Which, honestly, sounds disappointing. As a guy who writes about movies for a living, a franchise that ranges from great to terrible is a lot more fun than one that’s consistently “meh.”
With the release of Shazam: Fury Of The Gods over the weekend (which was shot before Gunn’s role was announced, and is now looking like a big flop), now seemed like the perfect time to rank all the weird, wonderful, and terrible movies of the “DCEU.” That is, the DC comics Expanded Universe (more on that in a second).
13. Justice League (2017)
In general, the top of this ranking was a lot easier than the bottom, where a handful of pretty bad movies compete for the dishonor of “worst.” Justice League is an outlier in that sense. This one is the worst by a wide margin. There are a lot of DC movies that are warty, uneven, and idiosyncratic, but Justice League was mostly none of those things, just terribly dull, which is a much greater sin.
Partly there are logistical reasons for that, as most people reading this probably already know. Director Zack Snyder dropped out before filming was finished and Joss Whedon took over, partly as part of a larger mandate to “lighten the tone” of the DC movies after the disappointing returns on Batman V. Superman: Dawn of Justice (including a 69% drop — nice — in its second weekend).
Snyder and Whedon are often depicted as perfect stylistic foils — Snyder “dark,” bombastic, and operatic; Whedon flatly lit, sitcommy, smart-alecky, and light-hearted — and whatever the truth of that, it mostly manifested onscreen as terminally unmemorable slog. Justice League had been in the works for at least a decade by the time it was released (with Fury Road‘s George Miller at one point set to direct), and it ended up feeling like I was watching a drive-in screen from a mile away with the sound off. I remember banal dreams from 10 years ago more than I remember Justice League. This was the movie so bad it spawned a campaign to have it entirely re-cut and re-released. And it was! (Again, more on that later).
Six years later, the only thing I really remember about Justice League was Henry Cavill’s CGI unmustaching (by the time Justice League was doing reshoots, Cavill was already well into shooting Mission Impossible: Fallout, and contractually obligated to keep his mustache).
One of my most closely-held opinions is that, much like every CGI Andy Serkis character would be better with Andy Serkis in his spandex suit instead of the CGI, Justice League would’ve been improved if Superman had just had a never-explained mustache in half of the scenes.
12. Batman V. Superman: Dawn Of Justice (2016)
While I generally take the Zack Snyder side of the Snyder vs. Whedon debate, Batman V. Superman: Dawn Of Justice plays like the perfect rejoinder to anyone who blames Justice League sucking solely on Joss Whedon. Snyder managed to make this one bad all on his own.
On the one hand, I do really enjoy the idea of Batman as a juiced-up proto fascist so terrified about the idea of a demigod like Superman that he’ll plunge an entire realm into nightmarish war over it. At one point in this movie, Batman (played by Ben Affleck) says of Superman “if we believe there’s even a one percent chance he is our enemy, we have to take it as an absolute certainty that we have to destroy him.”
It’s a speech pulled straight from Dick Cheney’s “one-percent doctrine,” and if Batman V. Superman had actually followed through on exploring the havoc that superheroes (superpowers??) could wreak through a combination of misplaced fear and “good intentions” gone wrong, it could’ve been great.
Unfortunately, it feels like no one in the movie is capable of articulating these ideas succinctly, and so we get scene after mopey scene of superheroes doubletalking like failed tech CEOs, rambling out bad ideas badly. The babbling could’ve been excused if Snyder had followed through, but it seems like he realized he couldn’t fit a genuine critique of the superhero mindset into a traditional superhero movie (which will become a theme in this list) and so he inserted daddy issues instead (that old standby!). So it is the two lead characters join forces when they realize that both their moms were named Martha.
Even with all that going on, BVS still found time for a double dream sequence (Batman having a dream inside his dream!) an incredibly grating Lex Luthor played by Jesse Eisenberg, and largely pointless introduction of Wonder Woman.
11. Black Adam (2021)
Another theme of this list is DC movies not being able to decide whether they should counter-program Marvel or imitate them. The MCU heroes are basically a benevolent CIA, and at first, Black Adam seems like it might be building up to a critique of that. It’s set in the fictional Middle East country of Khandaq, which is overrun by very Britishly-coded mercenaries. They accidentally awaken Black Adam (the Rock), champion of the local people, basically the indigenous superman, who starts dispatching them with extreme prejudice.
Ignorantly believing Black Adam a “threat to stability,” Amanda Waller (more on her later) sends in “the Justice Society,” a team of dopey, superpowered goons to neutralize him. This seems like a pretty good conflict, only instead of exploring Black Adam vs. a dumb superteam who think they’re doing good, he ends up having to battle some random guy (Ishmael, played by Marwan Kenzari) who is using the same powers as Black Adam but for personal gain. He’s doing anti-colonialism “the wrong way” essentially. A similar thing happens in Wakanda Forever and it sucked both times. Just have them kill the colonials, it’s not hard! Have you seen RRR?
It’s not so much that Black Adam has “bad politics” (it’s a big-budget superhero movie, who really cares) it’s just dull filmmaking. Throughout the latter part of the film, there’s a palpable sense that the “Justice Society” is some kind of golden goose that DC doesn’t want to kill off, even though we’re only just meeting them and they kind of seem like they suck. Aside from being poorly motivated, the action scenes don’t look all that great either.
10. Wonder Woman 1984 (2020)
Wonder Woman 1984 came out in December 2020, at basically the nadir of the pandemmy, a story not only set in the eighties, but feeling a bit like an eighties high-concept comedy with superheroes. Trying to even remember it now is hard, but the plot concerns Wonder Woman’s jealous work friend, a first-act rom-com klutz played by Kristen Wiig, getting her hands on a citrine wishing stone that turns her super. Meanwhile, Wonder Woman wants to use the same magic stone to wish her dead boyfriend, Steve Trevor (Chris Pine) back into existence after apparently having spent the last 66 years as a mourning celibate (for a supposedly empowering superheroine, she’s not very sex-positive!). It’s like a genie movie meets Ghost (Chris Pine’s soul inhabiting another man’s body) plus Pedro Pascal playing a slimy oil tycoon.
Superhero movies are almost too high stakes (how many times can we save the entire universe/subatomic fabric of reality?) so all this sounds pretty good in theory, but unfortunately it’s also a story that required Gal Gadot to do a lot swoony acting. Which she is, charitably speaking, far less good at than embodying a goddess. To put it bluntly, Wonder Woman 1984‘s love story plot was DOA and the action scenes were even worse.
9. Justice League, The Snyder Cut (2021)
Much like Wonder Woman 1984, I’ve blocked out most of my memory of Zack Snyder’s Justice League, released after much “fan” outcry in 2021. Even at four hours (I still can’t believe I actually watched this whole thing) I have to give the fans some credit. It is a substantial improvement over the original cut of Justice League. Then again, you could show me footage of my family being held hostage and it’d be an improvement over Justice League.
Zack Snyder’s Justice League at least had a more coherent style and a little panache. Gore! Characters saying the F-word! The parts in between the big battles and the plot about a giant portal were, I thought, mostly not half bad. The cast also varies wildly, from Ray Fisher (as Cyborg) and Gal Gadot, who are barely acting, to Ezra Miller (as The Flash) who is generally doing way too much and all of it very grating. (Supposedly they’re amazing in The Flash, which explains WB putting up with all their bullshit for this long, but I’ll believe that when I see it). Thank God for Jason Momoa, who should get an Oscar for being Jason Momoa.
Anyway, I give Zack Snyder’s Justice League some credit for not being nearly as terrible as I imagined, but it’s still a four-hour superhero movie about closing a portal. It should be noted that it did win the Oscar for “fan favorite moment,” for “The Flash Enters The Speed Force.” No one can ever take that away from it.
[Not Officially Part Of “The DCEU,” But If It Was, The Batman (2022) Would Go Here]
At this point, I realize that Matt Reeves movies are where my opinion and the opinion of the general moviegoing public most starkly diverge. Most people I know loved The Batman. Most of my friends loved The Batman. Whereas to me, sitting through Matt Reeves’ dour humorless slogs are about as fun as a root canal. Don’t get me wrong, a film noir-style Batman where the Riddler is basically the Zodiac killer does sound like an attractive idea on paper. And I’ll credit Robert Pattinson as an intriguing choice to play Bruce Wayne.
Yet in practice, The Batman had a climactic chase sequence that was not only so dark that I couldn’t tell what was happening, I couldn’t understand why it was happening. Which you think they would’ve had time to explain in a two-hour and 56-minute movie. I also think you lose all your “let’s make a cool film noir Batman” cred when you make the bad guy a social media phenomenon and have him meet up with the Joker. Why is this not part of the “DCEU” again? It sure seemed like they were trying to do some tie-ins. Actually, please don’t explain this to me, forget I asked.
8. Shazam! Fury Of The Gods (2023)
Shazam! was a great superhero movie, simultaneously sort of light-hearted yet heartfelt, and sugary in a way that makes Marvel feel like Nutrasweet (more on that later) by comparison. Part of its brilliance was existing in a self-contained world. The sequel tries to contextualize Shazam! inside a larger universe that also includes Superman, Batman, Wonder Woman… etc., with the hero on a psychiatrist’s couch in the beginning (actually his pediatrician, because he’s a teenager) complaining about his “impostor syndrome.”
It’s the movie itself that feels like it has impostor syndrome. It has characters that work (the superheroes are a family of foster kids, which I enjoy), but it keeps trying to insert them into a larger mythology that feels desperate and derivative. And then at a climactic moment, there’s basically a Skittles commercial.
DC almost always gets more smoke than Marvel from critics, but it’s hard to take any “the critics are too mean!” complaints seriously when it’s about a movie that has a Skittles commercial in the middle of it. Whereas the first Shazam! did a great job making Billy Batts seem like a fairly realistic smart-alecky teen, in the sequel he’s hyper-real and full of pop culture references, like calling the dragon-riding baddy “Khaleesi” (not to mention barely being in the movie outside of his Zach Levi incarnation).
It felt like they took a hero who was his own thing, and good at it, and couldn’t decide whether they should insert him into a Marvel-style universe (complete with pathetically worshipful Wonder Woman pimping) or turn him into DC’s Deadpool (but for kids!). There’s another thing I want to say here about the preposterousness of the post-credits scene, but… spoilers and all of that. Hopefully, it’s sufficiently vague to say that they try to a tie-in between what started as a kid-friendly superhero movie and an R-rated premium cable show. Weird!
7. Suicide Squad (2016), aka The Rap-Rock Suicide Squad
People really seem to hate Suicide Squad 2016, aka the rap-rock Suicide Squad, with the Jared Leto Joker, but I have a weird soft spot for it. I don’t know that it’s a good movie, but it does have its own singular personality, which is more than you can say for a lot of, if not most superhero movies.
This one was directed by David Ayer (who directed Fury and End of Watch, and who wrote Training Day) whose work has also been described as “dark.” But whereas with Zack Snyder “dark” seems to mean sort of grandiose and operatic, with Ayer it means kind of scruffy and sleazy and misanthropic, like hanging out at a strip club all day. This Suicide Squad seemed like it should’ve had a cameo by Shift Shellshock from Crazytown, which is neither a criticism nor a compliment, simply an observation.
That’s why I call it “the rap-rock Suicide Squad”: it’s a little like a cinematic Papa Roach song, very of a piece with early aughts nü-metal, starring a bunch of characters who are all a little messed up inside, dog, even if they don’t know all the right college-y words to express it.
The movie consists almost entirely of Amanda Waller (played by Viola Davis, one of the few elements of the film not to get ret-conned) introducing all the suicide squad characters in baseball-card-style vignette packages. Apparently what had happened was, David Ayer and his original editors finished one cut of the film, but then Warner Bros’ executives saw the middling response to Batman V. Superman: Dawn Of Justice, worried it was “too dark” (sound familiar?) and hired the company that had made the teaser trailer to recut the entire movie. The final cut was supposedly a “consensus take” of the two cuts, but the baseball-card-style intros came from the teaser company cut.
It’s a shame there hasn’t been the RELEASE THE AYER CUT!!! outcry for Suicide Squad to match the Snyder Cut campaign. I’d be very interested in an even-more-nü-metal Suicide Squad (and also a little scared). Preferably with a tie-in cameo from Shia Labeouf playing “Creeper” in The Tax Collector (Ayer’s next movie).
6. Wonder Woman (2017)
When it came out, people were, understandably, a little high on the idea of Wonder Woman being, at long last, a stand-alone movie about a female superhero directed by a woman. It also seemed to have some high-minded ideas, about Wonder Woman’s strength being her compassion rather than the steely detached qualities so prized in male superheroes. So she sets out to vanquish the God Of War and stop a senseless war (WWI!).
Call me crazy, but having her accomplish that by killing a bunch of German teenagers seemed to undercut the point a bit. It also had a weak villain and a hero with very vaguely defined powers. That being said, it mostly looked good, the hero looked the part, Chris Pine was solid as the sidekick/love interest, and no one had to destroy any portals. Of the DC canon, Wonder Woman feels the most like a Marvel movie — a competently-made, solid B that’s hard to get too worked up about in either direction.
5. James Gunn’s Suicide Squad (2021)
James Gunn’s The Suicide Squad is the toughest movie on the list to rank, because it’s alternately the most exciting and most disappointing movie in the DCEU canon. The first half of it is the satirical critique of American jingoism and comic book conventions I always wanted from a superhero movie (with due respect to Kick-Ass and Super, the latter of which Gunn also directed), delivered with the punk rock panache and flair for “low art” absurdity of a guy who got his start directing Roger Corman movies. Gunn’s strength is that he seems to understand that superhero movies should go BONK and SPLAT, not deliver lectures
Yet the second half of the movie infuriatingly couldn’t seem to manage the distinction between heroes and anti-heroes. These scruffy antihero characters couldn’t pull off the ending without going full babyface, in a stunted arc that smacked of studio meddling (or maybe I was just giving Gunn too much credit solely because I like his style). In the latter part of the movie, you could almost hear some suit whispering “but when does Harley Quinn get to kick ass” and “shouldn’t we have someone to root for?”
No, you shouldn’t! Anti-heroes are supposed to be delicious, not admirable! By the time a bystander shouted “it’s a freakin’ kaiju!” I was basically soured on the whole enterprise. Which is a testament to how much I hated that, given that this is otherwise the funniest, most exciting, and visually inventive movie on the list. The Starro scene is probably the coolest CGI set piece in all of superherodom (one of the few that didn’t bore me half to death). And yet as a whole the movie still feels like a missed opportunity.
4. Birds Of Prey
Birds Of Prey, directed by Cathy Yan, had all the abundance of style and lack of substance of The Suicide Squad without ever getting my hopes up that it would be something more. It has some of the best stunts and, thanks to Margot Robbie and Rosie Perez, probably the best acting of any of the movies on this list. And yet narratively it’s… some sort of post-modern, theater kid riff on a girl who just wants to eat an egg sandwich. Uh… sure?
3. Man Of Steel (2013)
Man of Steel would become an unfortunate harbinger for the DCEU in that it’s a great movie and a shit one just sort of smooshed together. The part that’s a Superman origin story works beautifully. With gorgeous compositions, gratuitous slow-motion, and Hans Zimmer in just the right doses, Man Of Steel gives us a Superman who’s a product of two fathers — one for whom Superman represents the last embodiment of the squandered potential of a dead civilization, and another for whom he represents an ideal towards which a young civilization can strive, if they can be mature enough to accept him. It gave Superman a depth that I’d never quite grasped before.
Russell Crowe and Kevin Costner are perfectly cast as Jor-El and Pa Kent, and Amy Adams is clearly slumming it as Lois Lane. All the stuff on Krypton works shockingly well. And then it feels like Zack Snyder and David S. Goyer belatedly remembered that they were trying to make a Superman 2 homage, Zod shows up, and the whole thing goes to shit. It takes a lot for me to be sad about Michael Shannon showing up, but Man Of Steel managed it. The bad guys don’t have any coherent motives and so the entire climactic battle basically feels like it’s happening because that’s what the filmmakers had originally pitched, even if they ended up stumbling upon a better story in the process. It got a lot of grief for killing bystanders, but not enough grief for not “killing its darlings,” as they say in writing school.
[Not Officially Part Of “The DCEU,” But If It Was, Joker (2019) Would Go Here]
Todd Phillips is basically my reverse Matt Reeves, in that I always seem to enjoy his movies far more than the general public. It’s hard to believe this was less than four years ago now, but as I remember it, the Joker discourse was basically that people were mad that Todd Phillips had had the gall to turn the Joker into some sort of hero for disaffected incels. As if the previous decade of Joker memes hadn’t already made it clear that the Joker was a hero to disaffected incels.
Todd Phillips got blamed for articulating a phenomenon that existed well before he got there, which was also wrapped up in a classic depiction-does-not-equal-endorsement debacle. Which was especially weird, because if you ask me, Christopher Nolan and David Ayer seemed like they were trying to make Joker a lot “cooler” than Todd Phillips did. Todd Phillips’ version mostly seemed like a sad loser.
One gets the sense that Phillips just wanted to make a classic 70s loner movie (as he reportedly told Joaquin Phoenix, “We’re gonna take $55 million from Warner Bros. and do whatever the hell we want.”) and so he did. The other charge against him was that he was ripping off Scorsese, which he absolutely was, but I could think of about a thousand other much worse things for a filmmaker to do. Joker certainly suffers a bit from its cursory attempts to tie it into the larger Batman mythology, but I could’ve easily watched another 90 minutes just about the machinations of Gotham’s clown union. Give me an entire The Wire season two-style series about the clown union hall.
Joker supposedly isn’t technically part of the DCEU, but maybe this (more than a billion worldwide) and The Batman ($770 million worldwide) are examples of what the DCEU should be. Aren’t auteurs’ weird riffs on DC characters (who don’t team up!) more exciting than trying to copy Marvel anyhow? Again, DC could be a great anti-Marvel when it isn’t imitating Marvel.
2. Aquaman (2018)
Can we let James Wan make all the blockbusters, please? Wan, who also made by far the best Fast/Furious movie (Furious 7) seems to have a better handle on what makes a goofy-brilliant big-budget spectacle than anyone else out there. No one makes stupid movies more intelligently than Wan, who also made Malignant.
In Aquaman, he gave us an Aquaman who was basically a superhero version of Jason Momoa, an effusive, Polynesian bro himbo. Just letting Jason Momoa be Jason Momoa is one of the smartest things Hollywood ever did and you have to credit James Wan for inventing the blueprint. Also, it had an octopus playing the drums. Perfect comic book movie, no notes.
1. Shazam! (2019)
I had never heard of Zachary Levi or director David F. Sandberg (previously a director of multiple horror movies produced by James Wan) before Shazam!, let alone the character of Shazam. And yet Shazam! is probably my favorite superhero movie of the last decade.
In a genre where most of the heroes are descendants of ancient monarchies, Shazam!‘s Billy Batson (played by Asher Angel) is a 14-year-old foster kid abandoned by his mother who gets his superpowers, basically by accident, from a dying wizard played by Djimon Hounsou (an excellent movie wizard). When Batson gets his superpowers, he and his new foster kid buddy (played by Jack Dylan Grazer, Brian Grazer’s nephew) do… basically what you would imagine 14-year-old boys would do with superpowers. Use them to buy beer, sneak into R-rated movies, and impress chicks. The discovering-their-superpowers scenes remain one of the few stock superhero movie scenes that don’t bore me to death, and Shazam! manages to capture the innocence of early adolescence without denying its natural mischievousness.
Paradoxically, by not shying away from the fact that superhero stories essentially appeal to kids, Shazam! manages to appeal to adults. We were all 14-year-olds once, after all. On the surface, the bad guys in Shazam! are the seven deadly sins, as represented by weird goofy gargoyle dudes made of smoke (another good move for superhero movies is to not deny the inherent silliness).
Yet in a genre that often tends towards Calvinism, with heroes who are intrinsically good and villains who are bad because they’re the enemies of good (a tautology), underpinning it all is the idea that the villain in Shazam! isn’t really one bad guy so much as the general concept of being an asshole. The climactic battle is basically a metaphor for the internal, age-old struggle to be a less shitty person, all wrapped up in a love letter to found family. I really do love this dumb movie.
Shazam!, grossing a relatively paltry $366 million worldwide, never quite got its due in its time, but to me stands out as an example of how good these kinds of movies can be, even if they usually aren’t.
Vince Mancini is on Twitter. You can check out his archive of reviews here.