The Kiwi skipper completed his tenth hundred off 78 balls and went on to reach 145-ball 153 when bad light ended play seven overs earlier with New Zealand 249-1, a strong position with just 102 runs away from Pakistan’s first innings total of 351.
Kane Williamson matched his skipper’s aggression and was unbeaten on 76, putting an impressive 198 for the unfinished second wicket stand which gave New Zealand a strong position to level the series which they trail 1-0.
Pakistan won the first Test while the second ended in a draw.
But McCullum’s rapidfire knock was overshadowed by the gloomy atmosphere as Pakistan and New Zealand observed a minute’s silence before start and wore black armbands to join in the mourning for young Australian batsman Phillip Hughes who died Thursday after being hit by a bouncer.
The New Zealand team also did not celebrate any dismissal.
The teams abandoned Thursday’s second day’s play as a mark of respect for the talented Australian.
McCullum stole the show, hitting eight sixes — four off left-arm spinner Zulfiqar Babar — and 17 boundaries as New Zealand rattled the total in just 45 overs.
In the penultimate over before tea he hit four boundaries in one paceman Mohammad Talha over before two quick singles completed his hundred.
This was the fastest hundred ever by a New Zealand batsman, beating the 81-ball hundred Ross Taylor made against Australia at Hamilton in 2010.
Williamson, who had a dismal series before this match, hit seven fours and a six off 96 balls.
Their stand is New Zealand’s best for second wicket against Pakistan, beating the 195 between John Wright and Geoff Howarth in Napier in 1997.
Pakistan’s spin-cum pace attack looked hapless against McCullum as Babar conceded 71 in his ten overs while leggie Yasir Shah gave 59 in as many overs.
Tom Latham was the only wicket to fall, caught behind off Rahat Ali for 13.
Earlier off-spinner Mark Craig took a career best 7-94 as Pakistan lost their last seven wickets for 70 runs to get bowled out for 351 after resuming at 281-3, squandering a strong position on a flat Sharjah stadium pitch.
Opener Mohammad Hafeez hit a career best 197 before he miscued a pull off leg-spinner Ish Sodhi and was caught at deep square-leg.
He hit 25 boundaries and three sixes during a dominating seven hour ten minute stay at the crease to better his previous highest of 196 made against Sri Lanka in Colombo two years ago.
But it was skipper Misbah-ul Haq who sparked a collapse, edging seamer Tim Southee to wicket-keeper BJ Watling in the fourth over of the day, without adding to his Wednesday’s score of 38.
Craig wrapped up the middle and lower order dismissing Asad Shafiq (11), Sarfraza Ahmed (15), Talha (nought), Rahat Ali (nought) and Yasir Shah (25) — his last four wickets coming off 25 balls.
Craig’s previous best of 4-91 came in his debut Test against the West Indies in Jamaica in June this year. -AFP