Bangladesh 281 for 7 (Shakib 101, Mushfiqur 65, Panyangara 3-66) beat Zimbabwe 194 (Taylor 54, Shakib 4-41) by 87 runs
Scorecard and ball-by-ball details

All-round Shakib ends Bangladesh's ODI drought

New ODI captain Mashrafe Mortaza smartly taking charge, Shakib Al Hasan hitting his first ODI century in four years and picking up four wickets, former ODI captain Mushfiqur Rahim contributing a fifty and a spectacular catch behind the stumps. Bangladesh needed this blend to win an ODI after 383 days and break their 13-game hoodoo. They defended 281 on a blanket of dew, cleverly, causing Zimbabwe to fall 87 short.

Shakib's 101 off 99 balls had 10 fours played all round the wicket as he, at times, toyed with the Zimbabwe attack. The visitors' ordinary fielding helped too, and Shakib found gaps easily to pick up 51 singles. There were overs when he and Mushfiqur also ran plenty of twos.

After helping Bangladesh to 281 for 7, Shakib wasn't done yet, and contributed by removing the first two Zimbabwe wickets - Sikandar Raza and Vusi Sibanda - in the eighth over, and later bowling Solomon Mire and having John Nyumbu caught at slip. The delivery to remove Raza was classic Shakib: the batsman was drawn forward but got duped by the turn. Shakib, in the process, became the 12th cricketer to take four wickets and score a century in the same ODI. Mahmudullah, Arafat Sunny and Mortaza took two scalps each, bowling tight spells and claiming important breakthroughs for the team.

For Zimbabwe, Brendan Taylor top scored with 54 off 72 balls with four fours and a huge six over midwicket. He also survived a chance on 51, when Arafat Sunny dropped him running in from deep square-leg, but had to depart after hitting an offcutter from Mortaza towards Mushfiqur, who did well to dive to his right and pouch a difficult chance. Hamilton Masakadza made 42 off 48 balls with seven fours before Mahmudullah trapped him leg-before.

But it was really the Shakib show all the way, with both bat and ball. In the first innings, he found boundaries through fine leg and third man, and also belted the ball through the covers, mid-off and midwicket at every opportunity. He reached his first fifty off 56 balls, and the hundred came off 95 deliveries. He chanced his arm a couple of times and the ball went past a gully and a cover fielder in the air, but largely, it was an innings that took Bangladesh from a slippery slide to a position from where they could dictate.

The shot that would define Shakib's innings came in the 37th over - a turn of the wrist that took the ball speeding past the midwicket fielder and the player at long-on. He added 148 for the fifth wicket with Mushfiqur, breaking the Bangladesh record set by himself and Raqibul Hasan against South Africa in 2008. Bangladesh were 70 for 4 when the pair came together, courtesy Mominul Haque's unnecessary scoop off Nyumbu; the hosts had compiled 218 by the time Shakib departed.

Mushfiqur was far luckier than Shakib, getting three lives - dropped on 16 by Chigumbura at cover, caught off a no-ball on 56, and dropped on 60 by Taylor at point. He connected twice with his slog-sweep, collecting two sixes, apart from two fours.

Shakib reached his century in the 43rd over and he celebrated with some shadow practice. The pair added 78 between the 30th and 40th over, and more tellingly, 48 in the second Powerplay. The final thrust was provided by Sabbir Rahman's 25-ball 44 that had three fours and three sixes, the last two of which came off the last two balls of the Bangladesh innings.

Bangladesh's start with the bat, however, was not up to the mark. Tamim Iqbal played all around a straightish delivery while Anamul slogged to offer a simple catch to mid-off. Mahmudullah made no use of his second appearance as Bangladesh's No. 4, hitting to mid-on.

Out of Zimbabwe's eight bowlers used, Panyangara took 3 for 66, while Tendai Chatara took two wickets. There was not much discipline as they conceded 17 wides and couple of no-balls. Neither Nyumbu nor Tafadzwa Kamungozi bowled their quote of 10 overs, although they took a wicket each.

As it turned out, it wasn't nearly enough to cause Bangladesh any more ODI woes in 2014.

Mohammad Isam is ESPNcricinfo's Bangladesh correspondent. @isam84