Solo: A Star Wars Story is a trifle. Solo is a puff pastry of a movie. Solo is a lark. But none of those things are inherently bad, and in fact they’re kind of refreshing. In the main Star Wars saga we get movies about the big, dramatic moments in galactic history. In Rogue One we got a movie about a small but vital moment in galactic history. In Solo we get a fun heist with some enjoyable double crossing and reversals that has plenty of connections to the larger Star Wars universe but that is more interested in exploring small parts of relationships rather than big pieces of canon.

It definitely feels like a prequel, but not to Star WarsSolo ends in a way that seems to be setting up a major storyline for some future media (a sequel? A cartoon? A series of comics? Masters of Teras Kasi 2?), and it expands out the criminal underworld of Star Wars enough to offer space for all sorts of other spin-offs. There is always a small universe problem plaguing the Star Wars films – everybody talks about the same six planets, after all – but I actually think Solo carves out enough new space (and illuminates existing space in enough interesting ways) to give the Star Wars universe a little extra breathing room.

We first meet young Han before he even gets his last name; he’s an orphan living in the slums of Corellia and in the employ of an underworld snake monster that runs a Fagin-like operation. He’s trying to escape with his girl, Qi’ra, but things go badly. Young Han (he gets his last name in this sequence, which I am sure will irritate many people but which I found to be rather charming and sweet) ends up in the Imperial Academy in a last-ditch effort to get off Corellia, and promises to come back and rescue Qi’ra when he can. Jump ahead three years and Solo is fighting a bloody, pointless war on a muddy planet, no closer to his goal, when he meets a team of crooks who have infiltrated his unit in order to pull off a heist.

From there things rocket forward as Han gets into the professional criminal life, setting up and screwing up jobs. Solo turns into a caper film, one with a decidedly late-period Western feel, and it’s simply fun as hell. Through a combination of bravado and competence Han is able to put together a daring heist, face off against some serious criminals, and learn a few lessons about betrayal in the process.

That this movie is watchable, considering the behind-the-scenes turmoil, is a miracle. That it’s fun is all about the casting. These actors are having a blast, and their chemistry is combustible. Alden Ehrenreich is especially great, and it’s because he’s made one terrific choice: he’s playing Han Solo, not Harrison Ford. That seems like a weird distinction, but it’s the correct acting choice. Rather than trying to imitate Ford, Ehrenreich has taken the character as created by Ford and extrapolated backwards for that guy. None of his scenes feel like Ehrenreich trying to guess how Ford would play it, he’s just trying to play it as Solo would do it. He understands that Han Solo is a CHARACTER, not just Harrison Ford in a vest. I think some fans would prefer an imitation, but I think capturing the spirit of the character is the better choice.

That spirit is the rogue with a heart of gold; Solo sheds enough light on Han’s backstory to show us that Solo was always a good guy pretending to be a bad guy. His return at the Battle of Yavin wasn’t the result of a change of heart, it was the result of Han being Han. And I love that! It places Han in the tradition of the best kinds of cinematic Robin Hood gangsters and surprisingly selfless criminals, which is the exact tradition George Lucas had in mind when creating the character.

Ehrenreich is a good team player; he knows how to share the screen with his co-stars, giving Solo an ensemble feel despite its Han-centered title. Donald Glover is magnificent as Lando Calrissian, showing us a real scoundrel against Han’s rogue. Glover’s Lando is a disloyal self-centered cheat, but the actor still makes him charming and lovable. I know there’s a lot of noise about a Lando film, but I think a spin-off would force Glover to shave the rough edges off his Lando, which would be a bummer. He’s much more the bad guy that Han wants to be, while Han is much more the good guy that Lando would like to be.

We get glimpses of that Lando – the one who joins the Rebellion in Return of the Jedi fifteen years later – in his relationship with L3-37, his droid co-pilot. The movie does something truly interesting with this droid, something never before done in a Star Wars film – it gives her a desire for rights.

As played by Phoebe Waller-Bridge, L3 is a robot experiencing a political awakening. She’s horrified by the way flesh beings treat the sentient droids, and we first see her trying to break up a droid cage match. Later she becomes the leader of a droid uprising, saying she has found her purpose in life. Some of this is played for laughs, but it all speaks to the film’s larger themes, that the galaxy is a deeply unfair place and that the current system is built on the backs of the less fortunate and oppressed. Sound familiar?

Lando’s relationship with L3 is complicated, and in this movie it ends on an unfinished note (again, this movie feels like it’s setting up a Han Solo trilogy), which I won’t spoil in this review. But it’s worth noting that this film paints Han Solo as something of a droid racist, as he has been exposed to droid freedom arguments in his youth but still treats 3PO like a slave in later films. Lando, on the other hand, has a close relationship with Lobot, who crosses the boundaries between droid and human – fallout from his relationship with L3?

I loved L3 because she’s a character who blows up the world around her, and I don’t mean that just literally. She walks into scenes and questions the basic assumptions we have held about the Star Wars universe for 41 years; while C3P0 and R2D2 being kicked out of the Mos Eisley cantina seemed like a rudeness in 1977 here it’s recast as profound discrimination. She forcibly demands a realignment of our views of Star Wars, and she’s hilarious in the process.

That theme of inequality and oppression runs throughout the film. Han is a character who instinctively understands exploitation because he was born into it; the son of a working class father who was laid off, he ended up running scams for a gang. In the Imperial army – not quite a stormtrooper – he understands that HE’S the bad guy, invading someone else’s planet. As the film goes on we see through Han’s eyes the ways that the criminal underworld and the Imperial hegemony feed off one another; on the luxury yacht of space gangster Dryden Voss Han sees a few Imperial officers being attended to by likely slave girls. In the spice mines of Kessel he lets Chewie run off to free Wookiee slaves because it’s the right thing to do, even in the middle of a tightly timed heist. And all of his decisions in the third act are informed by his innate sense of justice, a sense that consistently fights with his own self-interest.

(It’s worth noting that Han’s inability to let injustice go unaddressed makes him inherently more heroic than the Prequel Jedi, who left Anakin’s mother to rot in slavery on Tattooine)

That’s what makes his relationship with Qi’ra so interesting. Han runs into her again – as Voss’ right hand lieutenant – and it becomes clear he doesn’t need to rescue her… or does he? Their Corellian relationship, with Qi’ra tagging along after a braggadocious Han, is over, even if Han doesn’t get it. He doesn’t understand that Qi’ra has made some seriously morally compromised choices to get off Corellia, and he thinks he can rescue her from that life. But he doesn’t realize that maybe she likes that life, that perhaps her own sense of justice isn’t as pesky as Han’s.

Emilia Clarke is Qi’ra, and she has not only wonderful chemistry with Ehrenreich, she has the kind of solid steely center that makes for a great femme fatale. She’s bringing all her Game of Thrones attitude to the role, while also playing Qi’ra on a few different levels of deceit. Again, I don’t want to spoil anything, but I think this is one of the most interesting characters in the modern Star Wars saga, and I hope we get to see more of her moving forward.

All of these elements come together in fitful ways; Solo is a little herky-jerky and never fully achieves the kind of transcendent excitement you need from a film like this. It gets close a few times, and some of the action scenes are great (there’s a wonderful shot tracking Lando as he runs through a battle on Kessel that’s an all-timer), but there’s a weight holding everything down. I’m not quite sure what it is – some of the editing feels off, the script can be a touch hidebound – but it keeps Solo from being actually great.

It’s hard to place the blame at the feet of credited director Ron Howard. I’m not going to speculate how much of this film is Howard versus how much is ousted directors Phil Lord and Chris Miller, as that’s a fool’s game. Remember how everybody was so convinced that fast-talking Michael Pena and the Cure cue in Ant-Man were from Edgar Wright but they were actually Peyton Reed? There’s no point in trying to play the guessing game here. All we can acknowledge is that the production was troubled and you can possibly see some of that onscreen in a film that isn’t quite as limber and quick as it needs to be. Clocking in at 2 hours and 20 minutes, Solo is a little too long, and it can be a touch stiff.

But it’s still good, and fun. Solo manages to be playful even as it plumbs the darker corners of the Star Wars universe. And it manages to feel focused and insular even as it is the biggest collection of shout outs and Easter Eggs yet in the Star Wars saga (seriously, it brings in elements from Rebels, video games and books that have been banished from continuity). I think in many ways Solo is how a good prequel should be done – it hits many of the notes you want it to hit, reveals many of the origins you want it to reveal, answers some of the questions you’d like answered, but never makes that stuff central to the narrative. The history of the Millennium Falcon, the Kessel Run, Han and Chewie’s relationship, Lando’s wounded pride, Han’s dice… all of these things are there, but the movie isn’t about them. It’s about a young man trying to take care of himself but finding that he can’t stop trying to take care of others. It’s about a guy who wants so badly to be bad, but can’t help but be good. There’s a character and a story at the center of it that doesn’t simply exist to get us to the Mos Eisley cantina.