David Miller smashed 138 for a debut World Cup century while JP Duminy scored 115 during their unbroken fifth wicket stand of 256 — a new record in all one-day internationals.
Skipper AB de Villiers fell for 24 after Zimbabwe won the toss and put their opponents in at Seddon Park.
South Africa, one of the favourites for the tournament, were in danger of being labelled ‘chokers’ once again as they collapsed to 81 for four against African rivals Zimbabwe’s unheralded seam attack.
But with the likes of Hashim Amla and skipper AB de Villiers out cheaply, Miller counter-attacked with an 81-ball hundred, including three fours and six sixes.
Duminy followed Miller to a century, off 96 balls with eight fours and two sixes, as South Africa’s fifth-wicket pair turned the match upside down with a stand of more than 250.