Fight or Flight earns plenty of frequent flyer miles for blond Josh Hartnett going full lunatic once again. The actor, who had a bit of a comeback in 2023’s Oppenheimer—and an even bigger one anchoring M. Night Shyamalan’s Trap—brings that same commitment to director James Madigan’s modestly budgeted debut. He plays Lucas Reyes, an exiled American mercenary offered a shot at redemption if he can identify a criminal known only as “The Ghost” during a flight from Bangkok to San Francisco. The catch? He’s not the only one on board hunting for the same target.
In a nutshell, the film is a leaner Bullet Train—stripped of the bloated runtime, A-list budget, and overly convoluted plotting (and I say that as someone who liked Bullet Train, even if it was a bit much). Fight or Flight delivers some inventive action, and at 46, Hartnett reportedly did most of his own stunts. You can feel the budget being stretched thin—some of the effects are a bit clunky, which is surprising given that Madigan comes from a visual effects background. He clearly swings big, staging five or six major action set pieces, maybe more than the film can comfortably afford.
That said, the choreography is solid, with creative use of airplane seatbelts, bathroom stalls, luggage compartments, and even seat dividers as improvised weapons. But while the fights grow in size, the suspense doesn’t. The film lacks a true “boss fight” or a clear sense of escalating stakes. By the time Hartnett is fighting multiple attackers in the third act, it’s clear the film is more invested in spectacle than in keeping the audience on edge. It doesn’t help that it opens with a flash-forward to the climax, with the tired “X hours earlier” format that immediately starts the film on the wrong foot.
The plot isn’t especially original or full of surprises, but it’s paced well and throws in a few solid twists. There are some fun minor characters—and a few very annoying ones (I’m looking at you, Julian Kostov). Still, Hartnett makes it work, going all in on another unhinged, magnetic performance. He throws himself into it without hesitation, regardless of whether everything around him is quite up to par.
Turbulence and all, he’s what keeps this plane in the air.
- Where to watch
paramount plusPrime Video
Play trailer
- Original title
- Fight or Flight
- Director
- James Madigan
- Cast
- Josh Hartnett, Charithra Chandran, Katee Sackhoff, Marko Zaror, JuJu Chan, Julian Kostov, Hughie O'Donnell, Rebecka Johnston
- Rated
- 14A
- Screenwriter
- D.J. Cotrona, Brooks McLaren
- Composer
- Paul Saunderson
- Cinematography
- Matt Flannery
- Editor
- Ben Mills
- Country
- Language
- English
- Budget
- $40 million
- Box office
- $2.482 million
- Streaming (CA)
- Paramount Plus
- Buy / rent (CA)
- Apple TV Store, Amazon Video
