England, set a target of 185 in 44 overs, recovered from 20 for three to reach 73 for four when bad light ended play 16 balls early.
"It has been a fantastic series, full of ups and downs and I am just delighted to come away with a victory," England captain Michael Vaughan [ Images ] told Sky Sports.
"South Africa are a very hard team to beat, especially here, and these guys have put in a hell of a lot of hard work."
Vaughan was unbeaten on 26 at the end of the match with all rounder Andrew Flintoff [ Images ] on 14.
The last victorious England side in South Africa was in 1964-65, when MJK Smith led the tourists to a 1-0 win in a five-match series.
England lost their first wicket without a run on the board when fast bowler Makhaya Ntini [ Images ] had Andrew Strauss [ Images ] caught by Jacques Kallis [ Images ] at second slip with the eighth ball of the innings.
Robert Key was trapped in front for nine by fast bowler Shaun Pollock [ Images ] for nine, and three overs later Ntini struck again when he bowled Trescothick for seven with an angled delivery that seamed back to hit the left-hander's off stump.
That reduced England to 20 for three, but Vaughan and Graham Thorpe kept South Africa at bay for the next 17 overs, adding 25 runs before Ntini had Thorpe caught by Herschelle Gibbs [ Images ] at third slip. Ntini took three for 12 from 11 overs.
Earlier, AB de Villiers [ Images ] scored 109 and Kallis an undefeated 136 in South Africa's second innings of 296 for six declared.
Kallis batted for 277 minutes, faced 217 balls and hit 16 fours and a six, becoming the 25th player to score 20 Test centuries.
De Villiers and Kallis added 227 for the third wicket.
De Villiers was at the crease for 276 minutes, facing 169 balls and hit 11 fours and a six in his maiden Test century.
South Africa resumed on 59 for two, and De Villiers and Kallis hardly put a foot wrong in scoring 153 runs in a wicketless morning session.
England attacked to no avail before setting more defensive fields.
De Villiers and Kallis were separated 11 overs after lunch when the former attempted an on-drive to a ball from fast bowler Simon Jones and edged a catch to Matthew Hoggard [ Images ] at third man.
South Africa (1st innings) 247 (AB de Villiers 92; A. Flintoff 4-44, S.Jones 4-77)
England (1st innings) 359 (G.Thorpe 86, A.Flintoff 77, G.Jones 50; Nel 6-81)
South Africa (2nd innings) 296-6 declared (AB de Villiers 109, J.Kallis 136 not out)
England (2nd innings)
M Trescothick b Ntini 7
A Strauss c Kallis b Ntini 0
R Key lbw b Pollock 9
M Vaughan not out 26
G Thorpe c Gibbs b Ntini 8
A Flintoff [ Images ] not out 14
Extras (lb-7 nb-2) 9
Total (for 4 wkts, 41.2 overs) 73
Did not bat: G. Jones, A. Giles, M. Hoggard, S. Jones, S. Harmison.
Fall of wickets: 1-0 2-16 3-20 4-45
Bowling: Nel 12-5-24-0, Ntini 11-6-12-3, Pollock 7-3-9-1 (nb-1), Smith 3-1-8-0, Hall 5.2-2-9-0 (nb-1), Boje 1-1-0-0, Kallis 2-0-4-0.
Result: Match drawn, England win series 2-1.