Kagiso Rabada and Virat Kohli enjoyed a thrilling personal tussle as South Africa got the better of India on day one of the final Test in their three-match series.

It is winner takes all in the series decider, and India put themselves in after winning the toss for the third straight time. However, in overcast conditions in Cape Town, South Africa's quicks thrived as the tourists were bowled out for 223.

Making his 50th Test appearance, Rabada (4-73) led their attack brilliantly, dismissing Mayank Agarwal (15), Ajinkya Rahane (9) and Jasprit Bumrah (0) before he finally came out on top in his battle with India's captain.

Playing his 99th Test, Kohli was the only India batsman to score above 50 as he showed his class with a patiently crafted 79, with support from Cheteshwar Pujara (43) and Rishabh Pant (27), both of whom fell to Marco Jansen, who finished with 3-55.

Kohli changed tack after Pant's dismissal, getting on the front foot to propel India over 200, though Rabada got his man when India's skipper – who had survived a South Africa review earlier in the innings – pushed at a ball outside off stump.

Lungi Ngidi got a deserved wicket to finish off India's innings, giving the hosts chance to take to the crease in the final session, with the cloud cover having made way for sunshine.

Proteas captain Deal Elgar was drawn into an edge by Jasprit Bumrah (1-0), giving India a boost, but Keshav Maharaj (6) and Aiden Markram (8) guided South Africa to 17-1 at stumps.

Restrained Kohli goes up against rampant Rabada

Kohli came out in the 13th over with his side at 33-2, and provided just the tonic to South Africa's rapid start, leaving 65 of the first 100 deliveries that were outside his off stump.

Over the last five years of Test matches, just four batters have shown more restraint and patience, while his contest with Rabada was fascinating, particularly between the 47th and 49th overs, when Kohli was beaten twice and edged just short of second slip.

Rabada came up with the goods in a final session that saw six India wickets fall, though Kohli's stand could just have kept India in this Test after a dreadful start. It is just a shame no fans could be at Newlands to witness it.

Brilliant Bumrah hits back

South Africa had to face eight overs in the final half-hour of play, and four of those came from the quite sensational Bumrah, who bowled 23 dot balls and took the wicket of Elgar to boot.