Soumya (149) scored his first Test hundred and equalled the fastest hundred by a Bangladeshi batsman in Tests, while Mahmudullah (146) played a captain’s knock, but the Kiwis eventually prevailed by an innings and 52 runs.
After seeing the Tigers to the end of Day 3, the two began Day 4 with New Zealand leading by 307 runs.
They made a brave 235-run stand for the fifth wicket before Soumya was bowled by Trent Boult on 149.
Though Mahmudullah soldiered on, he was not able to stave off defeat for too long as the Bangladesh innings was wrapped up soon after tea.
Trent Boult picked up five wickets in the second Bangladesh innings, while Tim Southee added another three to his first innings total.
New Zealand skipper Kane Williamson was awarded Player of the Match for his double ton with the bat.
Score summary:
Bangladesh 1st innings: 234
New Zealand 1st innings: 715/6 (declared)
Bangladesh 2nd innings: 429 (At the end of Day 3: 174/4) (Soumya 149, Mahmudullah 146, Tamim 74, Shadman 37; Boult 123-5, Southee 98-3, Wagner 104-2)
Result: New Zealand wins by an innings and 52 runs
Series: New Zealand take 1-0 lead in three-match series
Player of the Match: Ken Williamson