The Proteas are now unbeaten in 14 successive Test series, having last tasted a series defeat against Australia in March 2009.
Captain Graeme Smith was delighted with his squad’s effort after they were criticised for not chasing a win in the drawn first Test at the Wanderers.
“We knew this was going to be a big game for us and I think it’s an incredible win,” Smith said.
“The performance of this team has been incredible over the five days.”
The hosts, set a target of 58 runs in their second innings, were guided home by Smith, unbeaten on 27, and fellow opener Alviro Petersen, on 31 not out, with a quickfire partnership shortly after tea on day five.
Earlier, the hosts snatched five wickets in the morning session as they tore through India’s middle order to leave the tourists reeling.
Fast bowler Dale Steyn produced an early double strike to put India on the back foot after they resumed at 68/2, while spinner Robin Peterson took two wickets in one over to leave the tourists flailing, and they never recovered.
With India taking the lead in their second innings before lunch, the hosts ripped through the tail to dismiss their opponents with half an hour left in the afternoon session.
Ajinkya Rahane, who made his maiden Test half-century in the first innings, produced a lone fight in an effort to hold off the Proteas bowlers, but he received little support as India were bundled out for 223 runs.
Rahane was the last man out, falling four runs short of his maiden Test century, after spending nearly four hours at the crease in a defiant innings that included 11 fours and two sixes.
Steyn, the Man of the Match, led the Proteas attack, returning 3/47 for match figures of 9/147, as the speedster took his 350th Test wicket in his 130th innings. Only retired Sri Lankan spin legend Muttiah Muralitharan (120 innings) has reached the milestone faster in his career.
He was well backed by Peterson, who took 4/74, and seamer Vernon Philander who grabbed 3/43.
Indian skipper MS Dhoni was pleased with the fight produced by his young squad throughout the series.
“I think it has been a fantastic Test series and a testing one for us,” Dhoni said.
“I think it was a very good experience for our team, playing against a top side, and I’m happy with their performance.”
Veteran all-rounder Jacques Kallis, who made 115 runs in South Africa’s first innings, in his final Test match, gave an emotional speech after taking a final lap around the Kingsmead pitch as thousands of spectators bid farewell.
“People say there is a day when you just wake up and you know it’s the right time,” Kallis said.
“I felt it was the right time and what a way to finish it off. I couldn’t ask for a better exit.”