South Africa won by an innings and 59 runs in the seventh over after tea on the third day to sweep the series 2-0.
The hosts won the first Test in Johannesburg by 358 runs, South Africa’s biggest win and New Zealand’s heaviest defeat in terms of runs.
Steyn, who took match figures of 10 for 93 in the first Test and four for 42 in the first innings in Centurion, claimed six for 49 in the second innings.
Steyn’s haul (ten for 91) was his career-best performance.
New Zealand, who needed 195 to make South Africa bat again, were bowled out for 136 in their second innings with Stephen Fleming’s 54 their top score.
Fast bowler Mark Gillespie took five for 136 as South Africa were dismissed for 383 in their only innings.
Gillespie’s performance made him the fifth New Zealander to take five wickets on debut.
Hashim Amla, who scored 176 not out in the first Test in Johannesburg, added another century with a disciplined 103.
Amla’s patient innings ended when he drove uppishly at a delivery from medium-pacer Iain O’Brien and was caught by a diving Michael Papps in the covers. New Zealand’s progress was held up by a spirited stand of 51 for the ninth-wicket between Steyn and Andre Nel, who both scored 25. The visitors slipped to nine for two in their second innings and they never really recovered.
NEW ZEALAND (I Innings): 188 all out
SOUTH AFRICA (I Innings, O/n: 272/3):
Smith b Martin 2
Gibbs b Martin 25
Amla c Papps b O'Brien 103
Kallis lbw Gillespie 131
Prince c (sub) b Gillespie 13
De Villiers c McCullum b G’spie 33
Boucher b Gillespie 1
Harris c McCullum b Gillespie 0
Nel lbw Vettori 25
Steyn c Papps b O'Brien 25
Ntini (not out) 0
Extras (B-6, LB-4, W-3, NB-13) 25
Score board
Total (all out; 97.3 overs) 383
Fall of wickets: 1-2, 2-31, 3-251, 4-282, 5-312, 6-325, 7-332, 8-332, 9-383.
Bowling: Martin 22-6-81-2, Gillespie 30-7-136-5, O'Brien 21.4-6-78-2, Vettori 19.5-2-61-1, Styris 4-0-17-0.
NEW ZEALAND (II Innings):
Vincent lbw Steyn 4
Papps lbw Steyn 1
Fleming lbw Steyn 54
Styris c De Villiers b Kallis 29
Taylor (run out) 8
McCullum c Smith b Steyn 21
Vettori c De Villiers b Ntini 8
Gillespie c Kallis b Steyn 0
O'Brien b Steyn 0
Martin (not out) 0
Cumming (absent hurt)
Extras (B-1, LB-9, NB-1) 11
Total (all out, 34.3 overs) 136
Fall of wickets: 1-4, 2-9, 3-69, 4-78, 5-117, 6-128, 7-128, 8-136, 9-136.
Bowling: Steyn 10.3-1-49-6, Ntini 12-4-39-1, Nel 7-2-20-0, Kallis 5-2-18-1.