Vishal Bhardwaj’s O'Romeo is a bloody, poetic revenge saga. Shahid Kapoor shines, but the 3-hour length and misplaced songs test patience. It’s a stylish, albeit overindulgent, underworld feast.

Last Updated: 02.35 PM, Feb 13, 2026
Based on the real-life incidents described in Hussain Zaidi's Mafia Queens of Mumbai, O'Romeo is a violent crime drama directed by Vishal Bhardwaj about forbidden love and bloody vengeance. The story follows Afsha (played by Triptii Dimri), who is driven to revenge for the gruesome murder of her husband (Vikrant Massey) by the merciless kingpin Jalal (played by Avinash Tiwary) against the violent backdrop of the Mumbai crime syndicate. She teams up with Ustara (played by Shahid Kapoor), a hardened contract killer whose life is turned upside down when an intense and unexpected love blossoms for Afsha as she seeks justice. In the midst of a gang battle that might destroy the city's criminal underpinnings, the two are torn between a deadly, unrequited love that requires them to give their lives for one another and their shared desire for revenge.
O'Romeo has turned out to be the longest film in Vishal Bhardwaj's career. The director—known for his finesse in filmmaking and for providing in-depth character analysis while maintaining a tight screenplay—chose this time to present both elements elaborately. But is O'Romeo the kind of story that needed so much detailing for such a basic, yet intriguing, plotline? Let's find out...
Although Bhardwaj called the film "confronting his dark side", it brought it out in the form of incessant violence. This is more blood than tears compared to what we have seen in his films over the past two decades. Even though that became the "face value" of O Romeo, for me, it was more musical than anything. The film begins with a melodious flute tune and continues with a guitar being strummed by Shahid Kapoor, who has a very subtle entry scene with a smile and calmness on his face. However, the background score simply doesn't stop, even during gory and slashed-up fight sequences.
The iconic song from Beta, Dhak Dhak, is around five minutes long, and that's the most upbeat the film gets during the first fight sequence of this three-hour-long movie. This is just the beginning of the lengthy sequences where creative liberties are taken to depict everything in detail, including how the ustara (straight razor) cuts through and tears apart the body.
O'Romeo is also a revenge saga in which Afsha unexpectedly enters Ustara's life and offers him a "supari" to kill four people, including Jalal (Avinash Tiwary), who is stationed across the seven seas in Spain. Although her desire for vengeance is rooted in a deeply emotional and clear backstory, Ustara's initial refusal provides her with even more motivation. However, the story takes its own sweet and bloody time to get Ustara on board. Well, he has to first dance with Disha Patani to Aashiqon Ki Colony, then, just a few minutes later, to Paan Ki Dukaan, before a big twist finally brings Ustara there to protect Afsha with his life.
Meanwhile, Ustara is not merely a dreaded gangster! He has his principles, and his continual collaboration with IB officer Ismail Khan (Nana Patekar) comes as a genuine surprise early on. Every time they share a frame, their banter elevates the film. It is such a treat to watch Patekar onscreen after a long time in a meaty role that suits his personality perfectly.
O'Romeo is also a love story of the kind that sells well in the movies: an unrequited one. It is believed that the film is based on the life of Sapna Didi, with Dimri's character inspired by her. However, from the beginning, Ustara questions her repeatedly about whether she will sleep with him to achieve her revenge, indicating that she is not exactly like Didi. The love story revolves around her deceased Romeo; she is torn between seeking justice for him and not wanting another Romeo to die because of her, yet definitely wanting him to kill for her.
There is one scene where Tiwary and Dimri come face-to-face, and he talks about how her wait for Romeo will not be wasted. This situation was ironic, especially considering that both actors played Laila Majnu nearly eight years ago.
By the time we reach the interval block, the film spreads out in such a way that—although you know how the third act will go—it is the shaping of the second half that will eventually make or break it. In the first half, nearly three songs are played consecutively, leading me to feel that the screenplay is less significant to the narrative than the music. To be honest, even the tracks are not always situational and feel forcefully dropped into the backdrop, especially the slower, romantic songs. A couple of lines of dialogue could have summed them up.
Yes, this film features music by Bhardwaj and lyrics by Gulzar, and together they create magic. However, this should not come at the expense of testing the viewers' patience while they wait for the story to unfold. The screenplay, written by Bhardwaj and Rohan Narula, ended up being somewhat ineffective.
Then, what makes O'Romeo gripping? The answer is obvious: Shahid Kapoor is the out-and-out saviour, survivor, and driver of the story. The actor also becomes a victim of it, in a way, because the story demands so much from him and he gives in without remorse. We see every emotion dripping from him; it humanises him completely, even though he is an antihero.
However, we also have another baddie, Jalal, who rightfully says that he and Ustara are cut from the same cloth. But the character doesn't quite exude the presence it aspires to. If there is a strong hero, there must be a stronger villain. No words can be said against Tiwary’s talent as a performer; however, his screentime is spent more on phone calls than in the flesh. When he does appear, his look is inspired by his favourite pastime—Spanish-style bullfighting. With green lenses and a tattooed head, the actor definitely looks the part, but the role doesn't fully justify his abilities. I expected more from him, even if it was just more physical presence onscreen.
To match Kapoor, we have Triptii Dimri as Afsha. She is beautifully written and performed, like a poem. The character, described by Farida Jalal (as Dadi) as a "ticking bomb," explodes step by step throughout her character arc. Her journey is predictable, and you can often guess her next steps; however, that predictability does not diminish the fact that she fully embodied the character.
To enhance these performances, we have impactful background music, which I enjoyed more than the standalone songs. In a fight sequence set in Spain, Kapoor and Dimri fire their guns and kill men one by one in a way that feels like they are performing a pasodoble. It is choreographed beautifully to the music—picking up guns and never missing a target. The film definitely has these poetic moments, but they occur irregularly and at unnecessary intervals.
The film is filled with actors making unlikely appearances, such as Farida Jalal, who brings a freshness you don't see coming despite her brief role. Another surprise is Hussain Dalal as Chotu, Ustara's right-hand man. It was a delightful performance that brought more chemistry to the screen with Kapoor than anyone else. Meanwhile, once again, Patani is relegated to just having dance numbers, quite similar to her role in Kalki 2898 AD.
The men in this film don't shy away from shedding tears; there is even a scene dedicated to them crying out loud, even without an obvious reason. Who ever stopped them?!
However, the biggest surprise of the film is Rahul Deshpande as Inspector Pathare. What a casting choice! Bringing his classical music prowess into the picture and using it to the fullest is unexpected and totally enjoyable. On the other hand, Massey's brief role serves merely as a catalyst and is limited to that single function.
Many wish for Romeo to live in a love story. But who is Romeo without a loving Juliet? Bhardwaj found a different answer this time!
O’Romeo is a visual and sonic feast that occasionally loses its way in its own indulgence. Vishal Bhardwaj crafts a bloody, poetic underworld, but the film’s staggering length and misplaced musical sequences test the audience's patience.
Subscribe to our newsletter for top content, delivered fast.