Laura Wolvaardt’s unbeaten 53 from 36 balls helped South Africa post 136-6 from their 20 overs on a sluggish Showground pitch.
Pakistan limped to 119-5 in response, with Aliya Riaz making an entertaining 39 not out from 32 balls, but it was ultimately an easy victory for the Proteas.
It is only the second time that South Africa have reached the semi-finals in seven editions of the tournament.
India were the only other previous team to have secured their place in the knockout stages after winning all four of their Group A matches.
Had South Africa lost, it would have thrown Group B wide open – and could have made England’s route to the semi-finals that little bit harder – but ultimately England joined them in the last four after beating West Indies by 46 runs in the later game.
At 54-3, the Proteas were struggling. Lizelle Lee, who made a century in their last game, nicked the excellent Diana Baig behind, before captain Dane van Niekerk played a terrible drive onto her stumps and Mignon du Preez was bowled trying to reverse sweep.
Wolvaardt, in her first innings of the tournament, got to grips with the slow pitch before accelerating in the final five overs.
She hit eight fours – almost all of them coming through sumptuous cover drives – and reached her half-century off the final ball of the innings with yet another boundary.
South Africa’s big hitters were becalmed by the surface, but they also came up against an improved Pakistan fielding side.