His best in South Africa was four for 88 during the drawn first test. He showed some star turns and bowled more than 20 overs in a day for the first time in two years.
Top of the list for him on that tour was trapping South African skipper Graeme Smith lbw with a full, 135km/h ball which swung late. He also had Jacques Kallis lbw in the second innings for his 300th test wicket, albeit off an inside edge unaccounted for with no Decision Review System.
Reports indicate his traditional swing with the new ball and reverse swing with the old were evident. He got the ball to move away from the right-handers with the odd one coming back to keep them alert.
That first innings in Johannesburg was the first time India's pace attack had taken all 10 wickets in just short of three years. Cricinfo reported Zaheer waited for Ishant and Shami to congratulate them before crossing the boundary rope at innings end in an act of pace-bowling solidarity.
Zaheer's return offers hope to captain Mahendra Singh Dhoni who vented his frustration after the series-deciding ODI in Hamilton: "It's been a disappointing performance from our fast bowlers. There have been too many boundaries and we've given [New Zealand] too much width where they can score freely.
"We're not able to hang on to the pressure created by our spinners, it's important to bowl to a plan and not deviate from it. We need fast bowlers who can start using their brains more and improvise as to what needs to be done. From a talent perspective we've got bowlers who can do it well. Shami is someone who has been quite consistent."