Set a stiff target of 458 for victory after India scored 421 in their second innings, the hosts put up a better batting display to reach 138 for two at close on the penultimate day today on a Wanderers track which seemed to have eased out quite a bit.
Alviro Petersen (76 batting) and Faf du Plessis (10 batting) were at the crease at stumps on another absorbing day's play which has set the stage for a thrilling finish with all three results a possibility.
With the pitch showing no signs of any rapid deterioration, the Indians may find the going tough to push for a 1-0 series lead on the final day's play tomorrow, considering that the Proteas have a strong batting line-up.
The Proteas, on the other hand, will look to bat out the entire day to avoid the embarrassment of a defeat at home.
The 222-run partnership was the highest stand for third wicket in a Test match second innings overseas. They bettered the long-standing record of 211 runs for the third wicket between Vinoo Mankad and Vijay Hazare at the Lord's in 1952.
Kohli was unlucky to miss out on a twin century as he was out for 96 in the opening session today after hitting 119 in India's first innings.