South Africa's fiery bowling and electric fielding restricted India to their second-lowest score in Twenty20 internationals as the visitors won the second match by six wickets amid crowd trouble to bag the series.
All-rounder Albie Morkel marked his return to the South Africa team after 18 months with bowling figures of 3-12 as the hosts were skittled for 92 in the 18th over, their lowest after being bundled out for 74 against Australia in Melbourne in 2008.
The match suffered a delay of close to an hour after fans, angry about the performance of the home team, started hurling plastic bottles on to the ground.
Supporters at the sold-out Barabati Stadium threw bottles during the change of innings and again when South Africa were batting, forcing the players off with the visitors 70 for three in 13.2 overs and closing in on victory.
The match resumed after police cleared an upper stand of the stadium and South Africa returned to complete their win on the first delivery of the 18th over with the fall of another wicket.
Earlier, South Africa opted to field first and, although India got off to a decent start, the visitors reined them in with some hostile but accurate bowling.
Rohit Sharma, the centurion from the last match at Dharamsala, and India's Test captain Virat Kohli were run out to some brilliant ground fielding by South Africa which compounded the hosts' batting woes.
Morkel, added to the squad in place of paceman David Wiese who suffered a fractured hand, was the only change for South Africa for Monday's match and the 34-year-old celebrated the occasion with his career-best bowling figures.
He was ably supported by paceman Chris Morris and leg-spinner Imran Tahir, who took two wickets each for South Africa.
The third and final T20 will be played in Kolkata's Eden Gardens on Thursday.