Left-arm spinner Abdur Razzak and paceman Shafiul Islam grabbed four wickets each on Monday to give Bangladesh a 65-run win over Zimbabwe in the third one-day international and a 2-1 lead in the five-match series.
Zimbabwe looked distinctly second best when they were reduced to 47 for six before limping to 181 all out in 48.1 overs chasing Bangladesh's challenging 246-7 under a cloudy sky.
Razzak plunged Zimbabwe's innings into disarray with a superb first spell in which he claimed three wickets and conceded only four runs in as many overs.
He added another wicket in his second spell to finish with four for 14, his third consecutive haul of four or more wickets in one-day internationals. Only five other bowlers have managed the same feat.
Razzak's tally in the series now stands at 13, including a hat-trick in Bangladesh's six-wicket win in the second one-dayer on Friday. Zimbabwe won Wednesday's first match by nine runs.
Prosper Utseya, leading Zimbabwe in place of the injured Elton Chigumbura, staged a lone battle with 67 from 130 balls before he was last man out, caught by Imrul Kayes at square leg off Shafiul Islam, who finished with four for 43.
Utseya had earlier taken four wickets for 38 runs but could not prevent Bangladesh from posting a decent total after the they had been reduced to 71 for four.
Shakib Al Hasan and Mushfiqur Rahim added 116 runs for the fifth wicket to steer Bangladesh out of trouble.
Shakib was out for 73 off 91 balls, his 17th ODI fifty and his second in the series while Rahim chipped in with 63.
The fourth match of the series is scheduled for Chittagong on Dec. 10.