India's bowlers all turned in a good display to help square the series against South Africa thanks to an 87-run victory at Kingsmead.
Zaheer Khan led the way with three wickets, while there were one each for Sreesanth, Harbhajan Singh and Ishant Sharma as the hosts, who were chasing a tough 303 for victory, were all out for 215 just under an hour after lunch.
Ashwell Prince top-scored with an unbeaten 39, but with key men Jacques Kallis (17) and AB de Villiers (33) having fallen early on day four, their side faced an uphill struggle.
In the end, they managed to add just 114 more to their overnight 111 for three as India, the world number one side, recorded only their second win on South African soil in 14 attempts - a vital one in the context of the series because they are level at 1-1 with the Test at Newlands to come.
There was not too much alarm when play got under way, despite overnight pair of Kallis and De Villiers adopting a cautious approach. However, that changed 7.2 overs in when a Sreesanth (three for 45) delivery kicked off the pitch and took the fending gloves of Kallis on its way to Virender Sehwag at gully.
Thereafter the hosts were further jolted by the loss of their other overnight man, De Villiers, who was given out leg before wicket by Asad Rauf and looked extremely unhappy as replays suggested that Harbhajan's delivery was going over.
There was even more surprise when Steve Davis raised his finger at the other end to send Mark Boucher (one) on his way lbw - Zaheer (three for 57) the bowler this time with the delivery seemingly headed well over off stump.
That left the Proteas in dire trouble at 143 for six, and Dale Steyn helped Prince add 12 more before he too departed - Zaheer again the wicket-taker with the batsman this time chasing a wide delivery that was edged straight to Cheteshwar Pujara at third slip for 10.
It was 182 for seven at lunch, with Paul Harris (seven) keeping Prince company, but he lasted just two more deliveries after the break before handing Zaheer his third wicket when he was bowled.
Morne Morkel briefly threatened the unlikely in a 33-run partnership with Prince. He was handed a reprieve on 13 - Sharma drawing an edge to Sehwag at third slip off a no ball - but then fell for 20, and Lonwabo Tsotsobe was last man out when he was run out by Pujara from short leg as he over-balanced out of the crease.