At stumps on Friday, Sri Lanka were 125 for eight, an overall lead of just 73, the only resistance coming from a stoical performance by Kumar Sangakkara, who was unbeaten on 63.
Bond had taken four wickets for 38 and was also instrumental in two run-outs, including the flukey dismissal of opener Sanath Jayasuriya, which started the rot in the Sri Lankan batting.
A full-length ball from Bond was driven firmly back by Upul Tharanga and deflected off the bowler's hand on to the stumps catching Jayasuriya backing up too far.
That brought Sangakkara to the wicket, where he stood like a rock while the best of the batting collapsed around him.
The lack of resistance undid the work of Muttiah Muralitharan and Chaminda Vass, who earlier bowled Sri Lanka back into the Test with a disciplined attack that had New Zealand all out for 206, a first-innings lead of 52.
But by the time Sri Lanka had wiped out the deficit they were already five wickets down.
Following the dismissal of Jayasuriya, Tharanga and Sangakkara carried the score to 44 before Bond and James Franklin claimed four wickets for just two runs.
Tharanga was first to go for 24, when an edge off Bond saw the tall New Zealand captain Stephen Fleming pull off a stunning catch.
He leapt to stop the ball, which spilled out of his hand before he managed to turn and catch it again before it hit the ground.
Sri Lankan captain Mahela Jayawardene was also caught by Fleming off Franklin without scoring, while Bond followed up with the wickets of Chamara Kapugedera (1) and Chamara Silva (0).
Prasanna Jayawardene put on 28 with Sangakkara for the sixth wicket before attempting a run that was never there, and was metres from the crease when run out by Bond.
Bond ended his outstanding day with the wicket of Farveez Maharoof (7) and Jacob Oram dismissed Chaminda Vass (0).
Fleming and Daniel Vettori were the mainstays of New Zealand's 52-run first-innings lead, adding 75 for the seventh wicket after Muralitharan and Vass combined to carve through the middle order.
Fleming's dismissal sparked another collapse with the last four wickets falling in the space of 18 runs.
Vettori, who lived a charmed existence in the face of repeated lbw appeals, top scored for New Zealand with 63.
As the Sri Lankan bowlers put the brakes on the New Zealand scoring, Fleming spent 16 overs in the 40s before cutting at Farveez Maharoof and being snapped up in slips by Chamara Kapugedera.
His dismissal brought Muralitharan back into the play taking both Franklin and Shane Bond lbw before Malinga ended the innings with Vettori's wicket.
Muralitharan, who finished with four for 65 off 34 overs, started Sri Lanka's fightback in the morning session that saw four wickets fall for seven runs inside four overs.
After New Zealand resumed the day at 85 for two, Fleming and Craig Cumming carried the score through to 106 when Muralitharan bowled Cumming for 43.
Nathan Astle lasted four balls before he fell lbw to the champion spinner for two.
Chaminda Vass joined the spree three overs later when in the space of four balls he had Jacob Oram caught by Chamara Silva for one and then bowled Brendon McCullum for nought.