Leg-spinner Imran Tahir and seamer Chris Morris chipped in with two wickets each as India were skittled for a paltry 92 after being sent in to bat on a pitch of inconsistent bounce at the Barabati stadium.
Indian off-spinner Ravichandran Ashwin had South Africa struggling at 49-3 after removing Hashim Amla (two), skipper Faf du Plessis (16) and danger man AB de Villiers (19) in his four-over spell.
But even two stoppages due to bottles being thrown on the field of play by disappointed Indian fans could not prevent the tourists from surpassing the modest target in 17.1 overs.
Match referee Chris Broad of England ordered match organisers to provide adequate security in the stands before the game could be resumed.
The easy win gave South Africa a decisive 2-0 lead in the three-match series, having won the opener by seven wickets in Dharamsala on Friday.
Read: Classy South Africa stun India in first T20
The final match will be played at the Eden Gardens in Kolkata on Thursday.
Rohit Sharma and Suresh Raina top-scored with 22 each as India were bowled out in 17.2 overs to record their second-lowest total in T20 internationals. They had fallen for 74 against Australia in 2008.
Morkel, a late induction in the touring squad after David Wiese was ruled out with a fractured hand, struck deadly blows after replacing Marchant de Lange from the team that played in Dharamsala.
India were reduced to 30-2 by the fifth over as Shikhar Dhawan fell leg-before to Chris Morris for 11 and star batsman Virat Kohli was run out first ball while attempting a risky second run.
Sharma, who hit a century in Dharamsala, was run out by a direct throw by David Miller from point.
Ambati Rayadu failed to get off the mark for the second successive time when he was bowled second ball by young fast bowler Kagiso Rabada.
India slipped into further trouble when skipper Mahendra Singh Dhoni was caught behind off Morkel for five to make it 67-5 in the 12th over.
Tahir, who shared the new ball with Kyle Abbott, dismissed Raina and the recalled Harbhajan Singh off consecutive deliveries in his third over, reducing India to 69-7.
The tail failed to play out the allotted overs against the sustained pressure applied by South Africa.
Ashwin had Amla caught at leg-slip, forced du Plessis to hole out in the deep and bowled de Villiers with a straight ball, but none of the other bowlers worried the tourists.
JP Duminy remained unbeaten on 30, hitting the winning boundary off Suresh Raina.
After the T20 series, South Africa will play five one-day internationals and four Tests on their 10-week tour of India.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ