Chris Gayle reignited West Indies' ICC World Twenty20 campaign with a victory over an India side that are now left hanging on by a thread in Group F of the Super Eights stage.
Captain Gayle led from the front for the hosts, hammering 98 from 66 balls to provide the bulk of his team's solid total of 169 for six.
India were unable to get such a knock from any of their vaunted top order, Suresh Raina finishing as their leading scorer with a well-made 32, and in the end they fell 14 runs short to slump to a second straight defeat.
Just as they had done in their heavy defeat to Australia on Friday, India were undone by their inability to cope with a barrage of bouncers up front.
Both Murali Vijay - who hooked Darren Sammy straight out to deep square leg - and opening partner Gautam Gambhir were undone by short deliveries.
Rohit Sharma's unfortunate dismissal off the bowling of Kieron Pollard - the right-hander being given out caught behind when the ball appeared to brush his forearm - didn't help their cause, as they slipped to 38 for three.
Raina tried to keep them in touch with the spiralling run-rate, hitting four fours and a six, before Gayle had him caught on the mid-wicket boundary.
Yuvraj Singh fell in Sulieman Benn's one and only over and when Dhoni (29)was run out by Dwayne Bravo's brilliant direct hit from long-on, India's hopes had gone. They eventually finished up on 155 for nine.
Things may have been different had Gayle not been dropped on 46, wicketkeeper Dhoni and Yusuf Pathan colliding trying to get under a skier.
The let-off proved a costly one, as Gayle, who slammed seven sixes and five fours in his 66-ball knock, made hay before being run out attempting to pinch a second run that would have got him back on strike in the final over.
Shivnarine Chanderpaul was the next leading scorer for the West Indies with a laboured 23 at the top of the order, while Sammy made 19 from 10 balls.
Ashish Nehra picked up two wickets in three balls during the final over to finish with three for 35, although by then Gayle had done plenty of damage.