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.

Khawaja defies the obituaries with half-century in third Ashes Test
FIFA launches $60 ticket tier amid criticism of 2026 World Cup pricing
Abu Dhabi Knight Riders snap Desert Vipers streak in one-run thriller
Dembele named FIFA player of 2025, Bonmati wins women's award
Australia's Green becomes IPL's most expensive overseas player