Directed by Czech filmmaker Václav Marhoul and written by Ben Shapiro, Confession is a historical psychological drama set in Joseph Stalin’s Soviet Union during the Great Purge.
If you can push past the endless controversy surrounding the film (political dissonance by the cast, past legal troubles of cast members, etc.), you’re in for a slow burn. Shapiro and his outlet aside, the film is unsatisfactory.
Rob Lowe plays a former literary professor named Alexei. He’s detained and abused in the infamous Lubyanka Prison, charged with conspiring with his dissident priest. While the film and logline try to push the exchange between Alexei and his former pupil Vladimir (James Franco) as the focal point, it’s one of the weaker storylines in the film.

The bulk of the film takes place in two places: an interrogation room and a jail cell. Once Alexei is disregarded like trash and thrown into a crowded enclosure, he’s greeted by Dimitri (Emile Hirsch), a concert pianist who acts as an unofficial spokesperson for the room. He’s joined by Alexander (Nick Nolte) and Bogdan (Richard Brake). In a similar manner to Job in the Bible, where he was surrounded by “friends” giving awful advice during his suffering, Dimitri and co. scoffed at Alexei’s dedication to Jesus and the reverence held for Father Mikulski (Brad Dourif).
Stalin was a staunch atheist and not only closed thousands of churches, but imprisoned and executed thousands of clergy. He had a religious background but abandoned it completely in his late teens, instead aligning with the likes of Karl Marx and Charles Darwin. He’s never shown in the film but mentioned often.
Alexei’s character arc goes from a selfish professor to someone who risks everything for a student. As the interrogations intensify, he realizes how horrible he was in his past life. His ex-wife Anya (Jennifer Jason Leigh) and son Sasha (Kodi Smit-McPhee) were used to influence his actions to no avail. They were hypercritical of his past actions and current mindset, and to their chagrin, he responded with Christ’s principles.
The dialogue between Alexei and Vladimir fell short in both interest and impact. The most intense and captivating exchange in the film was between Alexei and Sasha. A child distraught over his father’s actions, past and present. A father, desperately attempting to cleanse his sins of the past. An angry child, a sympathetic father, and an unquestionable climactic point in the film.
The film has an extremely sluggish start, peaks in interest in the middle, and slowly crashes after Alexei and Sasha’s row. The Alexei-Vladimir relationship was set up to be a battle in psychological chess, but it simply didn’t pan out. The dialogue-driven dynamic proved to be more of a snoozefest than a clash of intellect. Morality, survival, and ideological betrayal are all themes that were explored on par, but nothing that would’ve impressed. In what could be described as an act of self-sabotage, the film was over two hours long and was presented sans music. You won’t hear a single tune until the credits, and for that part, the music was gorgeous.
Confession gets a 6.5 out of 10. If the goal of this was to showcase morality vs. survival, it failed. If this was supposed to be the big comeback from James Franco, it failed big time. If highlighting religious persecution was the goal, it passed, although there are a multitude of things that would’ve improved the overall experience. For the amount of screen time he had, Rob Lowe gave the best performance of the star-studded cast. If screen time weren’t a factor, then Kodi Smit-McPhee would take top honors. I’m very outspoken when it comes to deceptive trailers, and unfortunately, part of the suspense buildup in the trailer was the music. Expecting that and getting over 120 minutes of dialogue is borderline treacherous.
Confession made its world premiere at the 2026 Warsaw Film Festival and arrives on The Daily Wire on Wednesday, Nov. 11.
-Jon Jones
Photos: Courtesy of The Daily Wire
Genre: Drama, History
Rating: Not Rated
Runtime: 2 hrs 12 mins
Trailer: Watch
U.S. Release Date: November 11, 2026
