It gave New Zealand a 74-run lead on the first innings of the series-deciding Test.
Sri Lanka resumed the day at 88 for four and calmly moved to 94 before Boult started the carnage when he had Roshen Silva caught at third slip for 21.
With his reverse swing working perfectly, Boult's following over was a three-wicket maiden.
Niroshan Dickwella (four) was also caught in the slips before Dilruwan Perera and Suranga Lakmal went lbw without scoring.
Boult finished the innings in his next over when Dushmantha Chameera and Lahiru Kumara also went lbw without scoring.
Bout finished with figures of six for 30 off 15 overs.
First Published: December 27, 2018, 7:11 AM IST