It seems that every Marvel movie somehow manages to generate even more hype than the last, and Avengers: Infinity War is no exception. It’s the movie that the last dozen-or-so films of its universe have been leading up to, focusing on the titular band of superheroes doing battle with Thanos (Josh Brolin), the much-ballyhooed big-bad of the Marvel universe. Infinity War brings with it the creative challenges posed by its two predecessors: juggling a massive cast of characters, maintaining a brisk pace for a hefty running time, and keeping the stakes high in a franchise that has rather cheapened the threat of global destruction.

To its credit, Infinity War overcomes these obstacles more often than not. Every character gets his or her moment in the spotlight, while the heavy hitters still get an appropriately bigger share of the scenes. Things move along at an impressively nimble clip, and the action sequences have a visual flair unseen in the previous Avengers movies, though the final battle scene is – predictably – too long. And after so many Marvel movies whose end-of-the-world climaxes were neutered by the knowledge that all will return to the status quo by the time the credits roll, Infinity War sets itself apart with real, irreversible repercussions – but more on that later.

On to the plot: Thanos, the fuchsia-hued titan, is convinced that the only way to save the universe’s many overpopulated worlds is to cull all of their populations by half. To do so, he requires all of the infinity stones – super-powerful McGuffins scattered across the cosmos. The Avengers and others, aware of Thanos’s plan, position themselves as the last line of defense between him and the remaining stones. It’s standard stuff for the superhero genre, but there’s enough twists in the execution for the movie itself to feel somewhat fresh.

For one, there’s the sheer scale of the thing. Uniting heroes is nothing new for the Avengers series, but Infinity War brings the practice to a whole new level. The fact that the only characters who get shortchanged are, frankly, the ones who deserve to be is an accomplishment unto itself, and there’s undeniable appeal in seeing well-established personalities from different parts of the Marvel universe meet for the first time. Infinity War takes full advantage of the possibilities this affords, and shrewdly mixes up the rosters of its heroes’ subgroups to maximize novelty. The downside to this is strategy is that one group inevitably ends up the least interesting; in this case it’s the Wakanda-based ground crew headed up by Captain America (Chris Evans) and Black Panther (Chadwick Boseman), who don’t get much to do aside from fighting endless waves of CGI minions. Alternatively, the Thor/Rocket/Groot trio that forms midway through the second act had me longing for its own spinoff.

A movie with this many heroes demands a great villain, and Thanos doesn’t disappoint. Marvel antagonists have been – with a few exceptions – pretty weak, but Thanos bucks the trend with ease. Brought to life by Josh Brolin’s quietly imposing performance, he’s a compelling figure because of his moral ambiguity. He’s not driven by power-lust or evil for evil’s sake, but rather what he sees as a way to improve the lives of billions. Though entirely aware of the horror his actions will bring, he views it as a necessary evil, and willingly sacrifices his own humanity – er, titan-anity – in the pursuit of his ultimate goal. He ends up being the best character of the movie, partly because of his complex motives, and partly because he’s the only villain in three Avengers movies to actually feel like a credible world-ending threat.

Which brings me back to that “consequence” business I mentioned earlier. Consider this a major spoiler warning for the rest of the review. In Infinity War, major characters die – a few, it would seem, quite permanently. It’s a bold move on the filmmakers’ part, especially in a franchise that’s previously skirted the question of the death tolls that must accompany its countless city-destroying battles. Unfortunately, the finale of Infinity War – which sees half of the heroes disintegrate into ash – ultimately feels like a cheat. On one hand, I want to applaud it for its willingness to end the movie on an uncertain, uncharacteristically grim note. On the other hand, it’s followed by a post-credits scene that reassures us that (almost) none of this will last, and that our heroes will be back in time for the next box office extravaganza. It’s an unnecessary – but very business-savvy – button on what had been easily one of the best endings to a Marvel movie ever, and one that would have made for an incredible conclusion to the series as a whole. Oh, well. See you guys at the next one.