England batsman Dawid Malan fired a half-century as the visitors eased to a four-wicket win over the Proteas in the second T20 to seal the series at Boland Park on Sunday.
The result gives England an unassailable 2-0 series lead ahead of Tuesday's final T20 at Newlands.
Malan, who grew up in the Boland region in South Africa, struck 55 off 40 balls and shared a vital 51-run fifth-wicket partnership with skipper Eoin Morgan on a slow deck at a hot and windy Boland Park.
Despite losing six wickets in their run-chase, England skipper Morgan steered his side to safety as they reached 147 for 6 in 19.5 overs.
Proteas spinner Tabraiz Shamsi starred with the ball by taking 3/19 in his four overs.
Despite going for 12.75 an over, Proteas fast bowler Lungi Ngidi delivered figures of 2/51 in his four overs.
Having been asked to bat first, the Proteas were restricted to 146 for six in their allotted 20 overs.
South Africa needed to come back strongly after their five-wicket defeat in the opening T20.
Skipper Quinton de Kock top-scored with 30 before the opener mistimed a delivery from fast bowler Chris Jordan.
Jordan picked up his 65th T20 wicket which saw him level with paceman Stuart Broad as England's leading wicket-taker in T20 cricket.
All-rounder George Linde, who was playing in his second T20, made a handy contribution with the bat for the hosts - making 29 off 20 - and Rassie van der Dussen remained unbeaten on 25.
Spinner Adil Rashid starred with the ball for the tourists by taking 2/23 in his four overs.
Scores in brief:
Result: England win by 4 wickets
South Africa 146/6 (De Kock 30, Linde 29, Rashid 2/23)
England 147/6 (Malan 55, Morgan 26*, Shamsi 3/19)