Resuming the day at 68/2 in the second innings, India had a challenging task in hand to bat throughout the day for a draw. But they suffered another batting collapse and were bundled out for 223 with a slim lead of 57 runs. India had scored 334 runs in the first innings.
Chasing a target of 58, South Africa took just 11.4 overs to score 59 with opening batsmen Alviro Petersen and skipper Graeme Smith remaining unbeaten on 31 and 27, respectively.
For South Africa the series win was a fitting farewell to its legendary Test star Jacques Kallis, who ended his 18-year-long Test career at the same ground where he made his Test debut against England in 1995.
Even in his farewell Test, Kallis struck a fine 115 that took South Africa to a challenging 500 in the first innings. Enroute to his 45th century, Kallis overtook Rahul Dravid to finish as the third highest run scorer in Tests.
But it was Dale Steyn, three for 47 in the second innings, who was adjudged as Man of the Match for his match haul of nine for 147. AB de Villiers was adjudged Man of the Series for his 190 runs and 14 catches.
On the final day, India were on the backfoot in the first session itself after they lost five wickets for 86 runs. But it was a valiant 96 from Rahane that helped them avoid an innings defeat. Rahane, who struck 11 fours and two sixes in his 157-ball innings, was eventually bowled by Philander as he fell three short of a maiden century in just his third Test.
Steyn struck first in the day removing overnight batsmen Virat Kohli (11) with the first ball of the day and Cheteshwar Pujara (32) in his second over.
Kohli was given out caught behind, playing at a fast, rising delivery outside his off stump. But TV replays showed that umpire Rod Tucker may have got it wrong as the ball seemed to have brushed his shirt sleeve after going past the outside edge of his bat. Pujara was the next to go, as his off stump was rattled while he attempted a forward defensive stroke.
Vernon Philander dismissed Rohit Sharma (25) trapping him leg before. It was Rohit's highest in the series so far. Left-arm spinner Robin Peterson dismissed Mahendra Singh Dhoni (15) and Ravindra Jadeja (8) in the same over to leave India struggling at 154/7.
Dhoni was out giving catching practice to Petersen at midwicket while Jadeja gifted away his wicket in a foolish way. Having hit Peterson for a straight six down the ground, Jadeja tried to repeat the same shot but sliced the ball high to mid-off where Morne Morkel took a good catch.
The South African came back in the post-lunch session to pick up the three wickets and wrap up India's second innings. Peterson finished with four for 74 while Steyn and Philander got three wickets each.
--IANS (Posted on 30-12-2013)