South Africa held their collective nerve to edge West Indies by three wickets under the Duckworth-Lewis method in a rain-disrupted shootout for a semi-final spot at the Twenty20 World Cup in Antigua.
The unbeaten Proteas joined England in the last four as Group 2 winners when Marco Jansen (21 not out) smashed a six down the ground off the first ball of the final over to get South Africa to their adjusted target of 123.
Left-arm spinner Tabraiz Shamsi had earlier taken 3-27 as tournament co-hosts West Indies were restricted to 135-8 before the rainstorm swept in to stop play.
Spinner Roston Chase (3-12) took three wickets late in the South African innings to set up a dramatic finish and give a glimmer of hope that West Indies might keep alive their quest for a third title.
"There's a lot of relief ultimately to get through to get to the semi-final," said South Africa captain Aiden Markram.
"I suppose it's been the story of our (tournament), get ourselves into tricky positions and sort of by hook or by crook get over the line."
The other two semi-finalists will be decided on Monday when India and Australia meet in St Lucia and Afghanistan take on Bangladesh in St Vincent in the last two matches in the Super Eight stage.

England dismiss Pakistan for 110 to seize control of Lord's test
Raphinha, Fermin score as Barcelona beat Athletic in home opener
Celtic and Rangers to play cup match behind closed doors after pitch invasion
Chelsea and Fulham reach League Cup third round as Welbeck scores on debut
PSG to meet Barca, Man City as Champions League draw throws up marquee ties