Proteas needed 331 runs to register their first victory in 2019 World Cup
Bangladesh made the perfect start to their 2019 International Cricket Council (ICC) World Cup campaign as their highest one-day international (ODI) score inspired a 21-run win over a beleaguered South Africa on Sunday.
Mashrafe Mortaza's side posted 330 for six as wicketkeeper-batsman Mushfiqur Rahim (78) and all-rounder Shakib Al Hasan (75) laid the foundations of their impressive display at the Oval.
Middle-order batsman Mahmudullah's boisterous 46 not out from 33 balls pushed Bangladesh past their previous highest one-day international total of 329 for six against Pakistan in 2015.
Attempting to become the first team to successfully chase more than 330 to win a World Cup match, South Africa's bid to rewrite the record books fell short at 309 for eight.
Proteas skipper Faf du Plessis scored 62 from 53 balls, but Bangladesh seamer Mustafizur Rahman took three wickets and economical spinners Shakib and Mehidy Hasan wrapped up a memorable victory.
After reaching the World Cup quarter-finals in 2015, Bangladesh once again look capable of shaking up cricket's established order, much to the delight of their army of vociferous supporters who packed the Oval.
"It will be one of our top wins," said Shakib at the presentation ceremony.
"We have done some upsets at World Cups but we want to prove something at this tournament."
In contrast, South Africa are in turmoil after du Plessis' decision to bowl first backfired despite two wickets from veteran spinner Imran Tahir in his 100th ODI appearance.
With the World Cup just four days old, they have already lost twice in south London -- this disappointing performance coming hot on the heels of their 104-run thrashing by hosts England in the tournament opener.
South Africa, who have never won the World Cup, are left with little margin for error in the rest of the 10-team group stage, which sees each country play nine matches.
It won't get any easier for Du Plessis' troubled side in their next match when they face title contenders India on Wednesday.