All-rounder JP Duminy claimed a hat-trick as South Africa stormed into the World Cup semi-finals with a comprehensive nine-wicket victory over Sri Lanka at the Sydney Cricket Ground.
The victory in the last-eight clash was South Africa's first in a knockout match at a World Cup and earned them a date with New Zealand or West Indies in Auckland next week.
The Proteas restricted the 1996 winners to 133 runs off 37.2 overs.
Duminy took three for 29 and Imran Tahir four for 26, the pair combining to break the back of the Sri Lanka innings with four wickets at the cost of just two runs in three overs to reduce the islanders to 116-8.
The spell included the ninth World Cup hat-trick, Duminy dismissing Angelo Mathews (19) with the final ball of the 33rd over and returning to send back Nuwan Kulasekara (one) and debutant Tharindu Kaushal (zero) with the first two deliveries of the 35th.
In reply, under-fire opener Quinton de Kock led the way with an unbeaten 78 from 57 balls as the South Africans comfortably reached their target with 32 overs to spare at the cost of only the wicket of Hashim Amla.
Amla departed for 16 but de Kock and Faf du Plessis (21 not out) ensured that skipper AB de Villiers, who scored 162 not out in his last innings at the SCG last month, could keep his powder dry for challenges to come.
Tahir's four victims included Mahela Jayawardene to leave the other retiring Sri Lanka batting great with a tally of four runs in his final innings in the 50-over format.
Sri Lanka 133 all out in 37.2 overs (Sangakkara 45, Tahir 4-26)
South Africa 134-1 in 18 overs (de Kock 78*, Malinga 1-43)