Jasprit Bumrah's pace onslaught helped India inflict a six-wicket defeat on South Africa to leave the Proteas' World Cup chances hanging by a thread.
Bumrah's masterful two for 35 heaped yet more misery on injury-hit South Africa, who mustered just 227 for nine to open a World Cup with three straight losses for the first time.
Meanwhile, New Zealand scraped a nervy win over Bangladesh as Ross Taylor marked his 400th international match with a superb half-century.
Taylor, who reached the milestone across all formats, hit 82 off 91 balls during a dramatic two-wicket success after the Tigers were all out for 244.
Tweet of the day
Magic over
With Bangladesh appearing to have little hope of victory, Mehidy Hasan breathed fresh life into the contest to keep it on a knife edge. He stirred up the large contingent of Tigers supporters at The Oval by brilliantly removing Kane Williamson for 40 and Tom Latham for a duck with the first and last balls of the 32nd over.
Tournament tracker
World Cup snapshot
The 35-year-old Taylor made a crucial contribution in London. His half-century, which included a 105-run partnership with captain Kane Williamson, prevented New Zealand falling short in pursuit of Bangladesh's modest total.
Ball of the day
India's Bumrah lived up to his pre-tournament billing as one of the world's best seamers with a cutting ball that squared up Hashim Amla and started South Africa's struggles at the crease.
Stat attack
Following the early wickets of Amla and Quinton De Kock, South Africa's 34 for two from 10 overs is the worst start to a power play in the World Cup so far.
What's next?
Australia v West Indies, Trent Bridge (Thursday, 10.30am)
Table
ga('create', 'UA-72310761-1', 'auto', {'name': 'pacontentapi'});
ga('pacontentapi.set', 'referrer', location.origin);
ga('pacontentapi.set', 'dimension1', 'By Press Association Sport staff');
ga('pacontentapi.set', 'dimension2', 'df045bb0-df5e-4f68-b5db-922da48c7608');
ga('pacontentapi.set', 'dimension3', 'paservice:sport,paservice:sport:uk');
ga('pacontentapi.set', 'dimension6', 'story-enriched');
ga('pacontentapi.set', 'dimension7', 'composite');
ga('pacontentapi.set', 'dimension8', null);
ga('pacontentapi.set', 'dimension9', 'sport:cricket');
ga('pacontentapi.send', 'pageview', { 'location': location.href, 'page': (location.pathname + location.search + location.hash), 'title': 'Cricket World Cup matchday seven: South Africa ripped apart by Jasprit Bumrah'});