The Proteas ended the match on 450 for seven, the third highest fourth innings score in test history, but played out successive maidens in the second and third last overs of the game to ensure they would not lose the match rather than go for the historic win.
It was a massive anti-climax on one of the great days of test cricket as South Africa went into the final day needing 320 runs to win with eight wickets remaining.
"We showed a lot of mental strength not to fade away," South Africa captain Graeme Smith said in a television interview.
"We played it beautifully until Faf got run out and after that you have to respect the decision of the guys in the middle.
"Chasing it down would have been incredible. It went down to the last hour which was great for test cricket.
"At the start of the day we wanted to make sure we went to Durban with a chance of winning the series."
After the loss in the morning session of Alviro Petersen (76) and Jacques Kallis (34) had put India on top, a 205-run fifth wicket stand between Du Plessis (134) and AB de Villiers (103) laid the platform for what would have been an extraordinary win.
The partnership was ended when De Villiers chopped an Ishant Sharma delivery onto his stumps with 56 runs still needed, and the jitters started in the home dressing room as JP Duminy (five) was bowled by the impressive Mohammed Shami.
Vernon Philander (25 not out) and Du Plessis took South Africa to within 16 runs of the win before the latter was run out with a direct hit by Ajinkya Rahane as he attempted a quick single.
At seven wickets down South Africa decided to play for the draw, with Philander and Dale Steyn (six not out) shouldering arms in the closing overs.
Steyn lofted the final deliver of the match over the boundary for six to howls of disapproval from the Wanderers crowd, who could scarcely believe their side had baulked at the opportunity to make history.
There was history of sorts made earlier in the day though, when India paceman Zaheer Khan claimed his 300th test wicket with the scalp of Kallis.
Zaheer became the fourth Indian bowler to claim 300 test wickets behind Anil Kumble (619), Kapil Dev (434) and Harbhajan Singh (413).
The second test of the two-match series starts in Durban on December 26.