Some fiery fast bowling from India's Mohammed Shami and Mohammed Siraj lit up their World Cup encounter with Sri Lanka and helped the unbeaten hosts secure a thumping 302-run victory in Mumbai on Thursday, becoming the first side to book a semi-final spot.
It was India's seventh win from as many matches in this year's 50-over tournament, and arguably their most dominant, with Sri Lanka's batters lasting under 20 overs while chasing a 358-run target.
The defeat all but ended Sri Lanka's remaining hopes of making the knockout stages with Kusal Mendis's side suffering their fifth defeat from seven matches.
Sri Lanka's chase got off to an awful start. Jasprit Bumrah struck with the first delivery before Siraj picked up the next three wickets to reduce them to four for three runs.
Coming into the attack next, Shami bagged a five-wicket haul to ensure that India's juggernaut rolled on. Shami finished with 5/18 while Siraj took 3/16 as Sri Lanka were bundled out for 55 in 19.4 overs, their lowest total in a 50-over World Cup.
India's Virat Kohli and Shubman Gill earlier hit commanding fifties and combined in a second-wicket stand of 189 to help the hosts post 357 for eight.
After Kohli and Gill fell to left-arm quick Dilshan Madushanka in quick succession, India's number four Shreyas Iyer provided the late flourish to the innings with a 56-ball 82.
Iyer hit three fours and six sixes in his knock before Madushanka, who finished with 5-80, dismissed the local batter to pick up his first five-wicket haul in the format.
Madushanka gave Sri Lanka a dream start by dismissing in-form India captain Rohit Sharma with the second ball of the innings after the island nation won the toss and decided to bowl on a hot and humid day at the Wankhede Stadium.
Kohli then made 88 off 94 balls while Gill scored a run-a-ball 92 to put the Sri Lanka bowlers to the sword. Gill survived a dropped catch on eight while Kohli also got an early reprieve on 10 during his knock.