India are on the cusp of the T20 World Cup semi-finals following a 50-run win over Bangladesh, who are all but eliminated after falling short in their chase in Antigua.

Hardik Pandya was the star of the show, hitting an unbeaten half-century off just 27 deliveries including four fours and three sixes, as India reached an impressive total of 196-5.

He was supported by Virat Kohli, who made his best total of the tournament with 37 before being bowled leg side by Tanzim Hasan Sakib, Rishabh Pant (36) and Shivam Dube (34).

The latter's partnership with Hardik helped India go from 108-4 to 161-5 before his dismissal, and some timid Bangladesh bowling ensured their eventual total was never in danger.

Kuldeep Yadav finished with figures of 3-19, bowling Tanzid Hasan lbw in a big moment after Bangladesh inched their way to 66-2. He followed that up with the dismissals of Towhid Hridoy (4) and Shakib Al Hasan (11) as Bangladesh gave themselves far too much to do.

Even Rishad Hossain coming in to smash 24 runs off his first eight balls faced did nothing to faze India, with his attempt at a rescue act ending when he slogged Jasprit Bumrah's delivery straight to Rohit Sharma.

While Bangladesh stay bottom of Group 1, India are the first team in the pool to reach four points, and their net run-rate means they are almost certain to make the semi-finals.

Data Debrief: Pandya ends two-year wait

While India were impressive as a batting unit overall, it was Hardik's quickfire 50 that took them from a defendable total to an impregnable one, representing his best score of the tournament following totals of 7 and 32 versus Pakistan and Afghanistan.

In fact, it was his first 50 in a T20I since November 2022, when he smashed 63 in vain at the semi-final stage of the last T20 World Cup, England's Jos Buttler (80) and Alex Hales (86) putting on an unbeaten masterclass to take their country to the final.