Rassie van der Dussen and David Miller smashed unbeaten half-centuries as South Africa chased down 212 in a seven-wicket win over India in the first Twenty20 international on Thursday.
Van der Dussen (75) and the left-handed Miller (64) put on 131 for the fourth wicket to drive the team home in 19.1 overs and lead the five-match series 1-0 in New Delhi.
South Africa achieved their highest T20 run chase to end India's bid to register a record 13th successive win in the format.
The tourists overcame a pre-match blow when Aiden Markram was ruled out of the opener with Covid-19 in a series played without pandemic bubble restrictions.
Cricket South Africa said Markram tested positive for the virus on Wednesday and is keeping "well" in his quarantine protocol.
Van der Dussen and Miller trumped Indian opener Ishan Kishan's 76 off 48 balls that guided India to 211 for four after being put into bat first.
South Africa lost skipper Temba Bavuma for 10 in the second over of their chase but Dwaine Pretorius attempted to hit back in his 13-ball 29.
Pretorius' departure and then Quinton de Kock's wicket for 22 swung the momentum back in favour of India but Miller soon took charge.
He was punishing on the bowlers as he hit left-arm spinner Axar Patel for a four and two sixes in a 19-run 13th over to silence the home crowd.
Miller, who is fresh from his Indian Premier League win with the Hardik Pandya-led Gujarat Titans, reached his 50 in 22 balls.
Van der Dussen survived a dropped catch on 29 to record his seventh T20 half-century as he hit the winning boundary in his 46-ball innings.
Earlier Kishan lay the foundation for India's total with key stands including an 80-run second-wicket partnership with Shreyas Iyer who made 36.
Kishan reached his fifty with a six off left-arm spinner Keshav Maharaj.
The diminutive Kishan smashed Maharaj for two sixes and two fours in the 13th over but got out caught on the last ball in another attempt to clear the rope.
Rishabh Pant, who made his captaincy debut for the national team after KL Rahul was ruled out with an injury on the eve of the match, smashed 29 and put together 46 runs off 18 balls with Pandya.
Pandya hit an unbeaten 31 off 12 balls as India finished with a flourish but the effort proved insufficient.
The second match is on Sunday in Cuttack.