Mohammed Shami shined on the final day as he took a five-wicket haul to seal India's win in the first Test.
Ravichandran Ashwin triggered the South African collapse as he removed Thenuis de Bruyn, and became the joint-fastest to 350 wickets in Tests.
Mohammed Shami went on a rampage as he removed Temba Bavuma, Faf du Plessis and Quinton de Kock to end Proteas' chances of securing an improbable victory
Ravindra Jadeja, then, took three wickets in an over, as South Africa stared at a humiliating defeat.
However, Dane Piedt (56) and Senuran Muthusamy (49*) forged a 91-run partnership for the 9th wicket to lead South Africa's fightback.
However, Shami struck once again, as he dismissed Piedt, and then Rabada to ensure India's win.
IPL 2020 recap: From MI's dominance to young guns firing again - 10 big talking points
India TV's team of IPL 2020: KL Rahul leads the star-studded lineup
'Bola tha inki ganit weak hai': Rohit Sharma hilariously reacts to his odd-even ad ahead of IPL 2020
I was expecting to be selected this time, couldn't even train that day: Suryakumar Yadav
IPL 2020 vs PSL 2020 - Here's how much prize money champions Mumbai Indians and Karachi Kings won
KL Rahul will have to take some blame for not finding KXIP's ideal playing XI, feels Aakash Chopra