Toxic: A Fairy Tale for Grown-Ups — A Review (Hindi Dub)
Yash returns after KGF with a dual role in Geetu Mohandas's most expensive Indian gangster epic yet. The scale and action dazzle, but a relentless, KGF-style edit and a wasted supporting cast leave this Hindi-dubbed father-son saga more exhausting than epic by its three-hour mark.

I had been looking forward to Toxic for a long time. This is Yash's first film since KGF: Chapter 2, and after two years of near silence from him, the hype around this project had been building steadily since it was first announced back in late 2023. There is something genuinely admirable about a star at that level of stardom choosing to collaborate with an indie, festival circuit filmmaker like Geetu Mohandas, known for Moothon, and then mounting the result as one of the most expensive Indian films ever made, reportedly shot simultaneously in Kannada and English. That alone is a wild swing. After a couple of release date shifts, the film finally arrived worldwide, and I caught an early show on release day, watching the Hindi dubbed version.
I want to keep the plot fairly vague, because a lot of the relationships and motivations here are not revealed through the marketing at all. Broadly, the story follows the rise of Raya in Goa, a state still untangling itself from Portuguese rule after the British had already left India. It is a lawless period defined by illegal trade, sudden wealth, and warring gangs, and Raya, played by Yash, wants to rule all of it, with his sister Ganga, played by Nayanthara, by his side. His romantic and professional entanglements as he climbs the ranks and eliminates competition form the bulk of the plot, pulling in Nadia, played by Kiara Advani, Rebecca, played by Tara Sutaria, Elizabeth, played by Huma Qureshi, and Mellisa, played by Rukmini Vasanth. But as the trailers already hinted, the real emotional and moral conflict at the center of the film is Raya's own son, referred to as Ticket and also played by Yash in a dual role. That father son rivalry eventually pulls in every woman in Raya's life, rival gang leaders, and even his own allies, turning into something close to an outright war.
That is about as much of the plot as I want to give away. What I can talk about freely is how the film plays as an actual theatrical experience, and there is a lot to unpack, both good and bad.
The Investment Shows on Screen
One of the biggest sources of frustration with big budget Indian films lately is that the announced budgets rarely feel visible in the actual visuals. We have been let down so often by flat, unconvincing CGI in these tentpole productions that it is genuinely surprising when a film's frames actually reflect the money spent on them. Toxic does not have that problem. The production design and cinematography, handled by Rajeev Ravi, clearly went to real effort to transport you into a bygone era and recreate the chaos of a state in upheaval after 1947.
The portions covering Raya's rise to power and his conflicts with rival gangs look genuinely stunning, and Goa is styled almost like a period version of Monaco, which works beautifully on the big screen. The same is true of the sequences representing Macau, associated with Raya's sharpest rise, full of a kind of filthy opulence that suits the tone. The costume design, the period appropriate weaponry, and the general unpredictability of this lawless setting all combine to make it feel like an actual gangster period piece, something Indian cinema has not really attempted at this scale in a long time. The visual effects, handled by the studio behind Dune Part Two, mostly hold up too, though a couple of shots involving a large scale set piece near the climax are noticeably weaker than the rest of the film. Whatever else I have to say about this film, I cannot deny that the money is visible in nearly every frame.
Mid, Forgettable Music
The soundtrack mostly exists to underline Raya's relationships with the women in his life, particularly the characters played by Kiara Advani and Tara Sutaria. The songs Tabahi and Madosh are decent attempts at capturing raw romantic tension, but neither one becomes especially memorable, mostly because the characters themselves are not written with enough depth for the songs to land emotionally. Hindi cinema used to have an entire era where longing and physical attraction were paired with rock influenced music, the kind of rebellious energy you got from tracks like Aadat or Garaj Baras. Toxic's music seems to be reaching for that same feeling, but it never quite gets there, because the songs play out like generic relationship montages rather than earned emotional beats. Composers Vishal Mishra and Tanishk Bagchi contribute competent work, but nothing you walk out humming.
Ravi Basrur, who has scored basically every big Yash film since KGF, brings some strong choices during Raya's rise to power, but the score becomes increasingly loud and difficult to sit through as the film goes on, especially across the numerous action set pieces in the second half, many of which share a similar trance like beat. By the end, a lot of the score stops registering entirely because it lacks a clear sense of purpose.
Action That Is Wildly Inconsistent
The very first big action sequence, staged in a cemetery, had me worried this would be the standard for the whole runtime. It leans heavily on slow motion shots and explosion money shots, with far more movement coming from the camera than from the actual choreography. There is also a bizarre comic interlude built around a loud stage announcement that genuinely does not belong in the film and feels like a tonal misstep that somehow survived the final edit. In several action scenes you are left wondering who exactly is attacking Raya, which gang they represent, and why they are doing unnecessary acrobatics instead of simply attacking him.
That said, there are real high points buried in here, and this is where JJ Perry's involvement as action choreographer, fresh off the John Wick and Fast and Furious franchises, becomes obvious. A sequence where a circus is ambushed by assailants dressed as jokers is genuinely well shot, with the camera tracking Raya through the chaos as he protects his boss in a tactile, immersive knife and gun fight where you always know exactly where everyone is standing. There is also a later sequence where Raya and Ticket fight each other, and the technique used to frame and mask the dual role is close to seamless, to the point where it barely registers that you are watching one actor playing both parts. A snow set fight lit only by the headgear of soldiers is another standout. The action in this film is not consistently good, but when it works, it really works.
A Promising First Half That Falls Apart
I want to be fair here. Despite everything people are already saying about this film online, I was genuinely invested in the first half. The backstory of childhood trauma driving Raya and Ganga to want to control this world is compelling, and both Yash and Nayanthara play that deep, buried sadness well, using their tough exteriors as a visible coping mechanism. Yash in particular is convincing as a man whose own demons keep catching up to him no matter how much he tries to drown them in women and alcohol. There is a stretch where Raya is falling apart, bloodshot eyes, barely able to stand or speak, and Yash fully commits to that collapse. It is one of the better stretches of acting in the film, and easily his most demanding work since KGF.
But then the film takes a turn that becomes increasingly frustrating, driven almost entirely by its editing. The pacing is relentless in a way that stops being exciting and starts being exhausting. Within the first thirty minutes you are introduced to a character, given their name and their conflict, and then watch them get killed almost immediately, all before you have had time to actually absorb any of it. The film essentially refuses to let a single scene breathe. People die, missions fail, and you are often left wondering who was even targeted and why, all while other characters react with emotional weight you have not been given the context to feel.
If you remember the editing style of the chase sequence in KGF, where scenes would cut to black and reappear, imagine an entire film built around that same rhythm, stretched across a runtime of three hours and fourteen minutes. It becomes exhausting to sit through, and it genuinely feels like the makers had far more footage than a single film could hold, almost as if this story was meant to unfold as a web series that got compressed under pressure. Some early reactions online have already started comparing it to Saaho, the 2019 pan India film that opened huge on hype alone but got dragged for confusing, overstuffed plotting, and while that comparison feels a little harsh, I understand exactly where it is coming from.
The Dialogue and the Supporting Cast
The dialogue is stuffed with analogies, riddles, and animal kingdom metaphors to the point where you want to reach into the screen and ask someone to just speak plainly. Kiara Advani gets the most substantial female role here and does bring a real sense of emotional grounding, seeing through Raya's facade in a way that makes him both uncomfortable and drawn to her, but her Hindi dubbing is noticeably inconsistent in places, which undercuts some of her stronger moments. She still ends up being the closest thing this film has to an emotional anchor, and she deserved more screen time than she gets.
That is a recurring issue across the board. Tara Sutaria looks stunning but her performance swings between sincere and wildly over the top. Huma Qureshi mostly smokes, smiles, and schemes without ever feeling genuinely intimidating. Rukmini Vasanth's character shows up only in the second half and her integration into the plot is the weakest of all the female roles, introduced and then left oddly unresolved. Nayanthara, an actor fully capable of carrying a film on her own, is also given far less to do than her early scenes suggest she deserves. Across the board, the women in this film end up feeling like glorified extras because the story is constantly rushing forward to the next relationship beat, the next argument, the next action scene, the next new gang, without ever slowing down to do justice to any single thread.
As for Yash's second role, Ticket is meant to be a study in theatrical instability, but in execution it tips into being loud and grating, arguably the hammiest performance in the entire film. There is a stretch near the climax where Raya and Ticket are simply screaming at each other, and it tests your patience to the point of wanting to walk out, purely out of curiosity about how it resolves rather than genuine investment.
I should mention that dubbing a film shot simultaneously in Kannada and English into Hindi was always going to be tricky, and I felt the seams more than once, beyond just Kiara's inconsistent lines. Several of the quieter, more intimate exchanges between father and son feel like they were translated to prioritize lip sync over actual emotional meaning, and a few lines land with an odd, stilted rhythm that pulls you out of the moment. If you have the option and understand Kannada, the original version is likely carrying more nuance than what came through here.
A Climax That Goes Somewhere Nobody Expected
Without spoiling anything, the climax takes an audacious, almost deranged narrative swing that I doubt many people will see coming. It is bold, but by that point you are left wondering whether the film was ever really interested in its characters, or whether it was always more focused on staging spectacle at a scale befitting its budget and its star. Strip away the pressure of being a mega budget, star driven project, and there is a genuinely interesting, smaller story buried somewhere in here, one that might have worked better as a tighter, more disciplined film in the two and a half hour range rather than pushing past three.
Final Verdict
Toxic is a technically staggering film, backed by genuine scale, strong production design, and a handful of excellent action set pieces, held back by an editing style that refuses to let any single moment land, dialogue that leans too hard on empty metaphor, and a supporting cast full of talented actors given almost nothing meaningful to do. Yash is genuinely committed across both roles, particularly as the unraveling Raya, and the film's ambition as a mythic, operatic father son tragedy is admirable even when it does not fully land. The Hindi dub adds a further layer of friction on top of an already overstuffed screenplay. After a four year wait since KGF, I walked out impressed by the craft on display but frustrated by how little of it adds up emotionally by the end.
I would put this at two and a half out of five. Worth watching on the big screen for the scale, the standout action sequences, and Yash's more grounded moments as Raya, but go in prepared for an exhausting, occasionally incoherent three hour and fourteen minute ride rather than the tightly wound epic the marketing promised.
