Marco Jansen and Kagiso Rabada set the foundations for the lopsided victory with destructive opening bursts of pace bowling to have Afghanistan reeling at 20-4 in the fourth over, and eventually all out for a paltry 56.The South Africans lost just one wicket in pursuit of its first semifinal win at a global men's limited-overs tournament, with Reeza Hendricks hitting a six and a four on consecutive deliveries to lift South Africa to 60 for 1 in the ninth over.
Hendricks was unbeaten on 29 from 25 balls in an unbroken 55-run second-wicket stand with skipper Aiden Markram, who finished 23 not out.
The South Africans will face either defending champion Englandor India in the final at Barbados on Saturday.
Afghanistan captain Rashid Khan won the toss and opted to bat in his team's first ever appearance in a World Cup semifinal. Everything went South Africa's way after that.
Jansen (3-16) took wickets in the first and third overs and Kagiso Rabada (2-14) opened with a double-wicket maiden as Afghanistan slumped to 20-4 after 3.4 overs.
The opening pair that had carried Afghanistan so well during the tournament was gone, exposing the middle and lower order to a South Africa bowling attack hitting form at the perfect stage.
Rahmanullah Gurbaz (0) faced three balls before he edged to slip and was out to Jansen in the first over. Ibrahim Zadran (2) was beaten by a Rabada inswinger and bowled on the first ball of the third over.
Anrich Nortje (2-7) chimed in with two wickets as the pacemen continued to rip through the Afghanistan innings before wrist spinner Tabraiz Shamsi took three wickets in 11 deliveries - all lbw decisions to balls keeping low - to finish off Afghanistan for 56 in 11.5 overs.
Azmattullah Omarzai top scored with 10, the only Afghan batter to reach double figures.
South Africa lost only opener Quinton de Kock - bowled by Fazalhaq Farooqi for five in the second over - in the run chase.
Afghanistan was playing in the last four for the first time, and it entered the match with three of the five leading wicket takers in the tournament and two of the top three batters, based on runs scored.
The Afghan team's run to the semifinals, particularly its first win in any format against Australia and against Bangladesh in the early hours of Tuesday in the Super Eight stage, inspired a generation of fans. (AP)