Middle order bat Ajinkya Rahane stroked his second century of the match to help India set South Africa a 481-run victory target in the fourth and final test at the Ferozeshah Kotla stadium on Sunday.
Rahane became the fifth Indian to score centuries in each innings of a test match and was unbeaten on 100 when India declared their second innings on 267-5 half an hour before the lunch break on the penultimate day.
South Africa stuttered early in their chase, losing Dean Elgar (four) to Ravichandran Ashwin before crawling to 40-1 at tea, still 441 runs behind the target.
Hashim Amla and Temba Bavuma (30) were content stonewalling with the hope of taking the contest to the fifth and final day on Monday.
Amla has endured a wretched Indian tour with 43 being his highest score in the test series and the South African skipper took 46 balls to get off the mark and remained not out after making six painstaking runs from the 113 balls he faced.
In a low-scoring series in which no other batsman from either side managed a single hundred, Rahane took 206 balls to bring up his second of the match and the sixth of his test career with the help of eight boundaries and three sixes.
India resumed on 190-4 with Rahane deciding to go for his shots even if it meant courting risks.
He played a couple of uppish drives past the point fielder before bending his knees for an upper-cut, chipping a Morne Morkel delivery over third man in an uncharacteristic show of aggression.
At the other end, captain Virat Kohli (88) added five runs to his overnight score before a low Kyle Abbott delivery trapped him leg before to end the series-high 154-run fifth wicket partnership.
Rahane could not be denied his hundred, though.
The 27-year-old slog-swept Imran Tahir over midwicket for his second six of the innings and stepped out against Dean Elgar for his third to storm into the 90s.
Rahane then took a quick single off leg-spinner Tahir to join an elite league of Indians that also included Vijay Hazare, Sunil Gavaskar (thrice), Rahul Dravid (twice) and Kohli.
India immediately declared their innings, setting a stiff target to a South African team who were shot out for 121 in the first innings and have not gone beyond 185 in the series so far.