The Proteas claimed a 107-run victory on the fourth morning of the third and final Test match against Pakistan to record a 3-0 series whitewash and moved to number two on the ICC Test rankings.
The day began with De Kock and Hashim Amla (71) at the crease and they frustrated the Pakistan bowlers for much of the first session, both passing 50 in a stand of 102 before Hasan Ali (1-83) found Amla's edge with a ball that diverted off a crack in the pitch.
Having reached his fourth Test hundred, De Kock was eventually dismissed for 129 as South Africa were bowled out for 303 midway through the afternoon session. Shafiq accomplished his half-century at a run-ball, but Azam could only add four runs to his score and fell prey to Duanne Olivier after scoring a promising 21 runs with five boundaries. De Kock was involved in all three wickets to fall to complete a memorable day. He was finally caught in the deep, trying for a second successive six off leg-spinner Shadab Khan, after facing 138 balls and hitting 18 fours and a six.More news: "Baby's turning blue!": 911 call reveals moments vegetative patient gives birth
Olivier, 26, picked up his 24th wicket of the series in Pakistan's second innings when he bowled skipper Sarfraz Ahmed for a duck.
Steyn's two wickets took his total in Tests to 433, bringing him level with Sri Lanka's Rangana Herath and Stuart Broad of England in joint eighth place on the all-time Test wicket-takers list.
The last South African to take 25 wickets in a three-match Test series was Charlie Llewellyn against Australia all the way back in 1902.More news: Eagles console Alshon Jeffery after mistake leads to interception
When the umpires called stumps‚ Pakistan still needed 228 runs to stun South Africa and win this match and their mission looks unlikely as they have already lost key batsmen in Imam-ul-Haq‚ Shan Masood and Azhar Ali.
BOWLING (to-date): Steyn 12-1-37-2; Philander 10-3-28-0; Olivier 8-2-41-1; Rabada 10-1-46-0.More news: Tom Brady, Patriots embrace underdog role after win over Chargers