Choosing to bat first at the Shere Bangla National Stadium, the visitors stumbled their way to an uncompetitive 195 for nine off their 50 overs, with opener Shai Hope top-scoring with 43.
West Indies were at snail’s pace as they crawled to 79 for three at the half-way stage of the innings, and they needed busy knocks from Keemo Paul (36) and Roston Chase (32) down the order to lift the tempo.
Seamers Mashrafe Mortaza (3-30) and Mustafizur Rahman (3-35) kept the Windies in check, however, limiting them to their fourth-lowest total against Bangladesh.
In reply, Bangladesh overcame the lost of two early wickets to coast to their target in the 36th over, with wicketkeeper Mushfiqur Rahim stroking an unbeaten 55 and Liton Das gathering 41.
Having suffered a 2-0 whitewash in the preceding Test series, West Indies are now staring at yet another series defeat, with the second ODI scheduled for Tuesday at the same venue.
Faced with a slow pitch, the Windies openers struggled from the outset, and Hope and Kieran Powell (10) needed 48 deliveries for their 29-run stand.
Frustration ultimately led to Powell’s downfall in the eighth over, the left-hander swinging at left-arm spinner Shakib-al-Hasan and holing out to Rubel Hossain running around to cover point.
Darren Bravo, playing his first ODI in two years, also found himself bogged down and his 19 came from a painful 51-ball labour at the crease, in a 36-run second wicket stand with Hope which required 76 balls.
Similar exasperation was behind Bravo’s demise, drilling Mashrafe to long off where Tamim Iqbal took a stunning diving catch in the 21st over.
When Hope, who struck three fours, sliced Mashrafe to point in the 25th over, the Windies were 78 for three and in need of momentum, but five wickets tumbled for 62 runs, to leave the innings in further trouble at 127 for six in the 40th over.
Shimron Hetmyer (6) made too much room and lost his leg stump to off-spinner Mehidy Hasan, captain Rovman Powell (14) picked out mid-off with Mashrafe and Marlon Samuels, whose 25 came from 48 deliveries, holed out to long on with pacer Rubel Hossain.
The revival came through Chase and Paul, the pair adding a brisk 51 from 48 deliveries for the seventh wicket, as West Indies gathered 66 runs from the last 10 overs.
Paul crunched a four and two sixes in a 28-ball cameo while Chase counted a single four and a six off 38 balls.
In reply, Bangladesh lost opener Tamim Iqbal cheaply for 12 in the eighth over, and Imrul Kayes followed for four just four balls later in the next over for four, as the innings stuttered to 42 for two in the ninth.
However, this was the last sign of any real success for the Windies as the right-handed Mushfiqur took the game away by anchoring three critical partnerships.
First, he put on 47 for the third wicket with Das who struck five fours in a 57-ball knock, before adding a further 57 for the fourth wicket with Shakib whose 30 came from 26 deliveries.
Mushfiqur, who faced 70 balls and counted five fours, posted 29 for the fifth wicket with Soumya Sarkar (19) and eventually struck the winning runs off the first ball of the 36th over when he collected a couple to third man off leg-spinner Devendra Bishoo.
SCOREBOARD
WEST INDIES
K Powell c Rubel b Shakib 10
+S Hope c Mehidy b Mashrafe 43
D Bravo c Tamim b Mashrafe 19
M Samuels c Liton b Rubel 25
S Hetmyer b Mehidy 6
*R Powell c Liton b Mashrafe 14
R Chase c Mehidy b Mustafizur 32
K Paul c Mehidy b Mustafizur 36
K Roach not out 5
D Bishoo c & b Mustafizur 0
O Thomas not out 0
Extras (lb3, w2) 5
TOTAL (9 wkts, 50 overs) 195
Fall of wickets: 1-29 (Powell), 2-65(Bravo),
3-78 (Hope), 4-93 (Hetmyer), 5-119 (Powell),
6-127(Samuels), 7-178 (Chase), 8-194 (Paul),
9-195 (Bishoo)
Bowling: Mehidy 10-0-30-1, Shakib 10-0-36-1,
Mustafizur 10-0-35-3, Mashrafe 10-0-30-3 (w1),
Rubel 10-0-61-1 (w1)
BANGLADESH
Tamim Iqbal c Bishoo b Chase 12
Liton Das b Paul 41
Imrul Kayes b Thomas 4
+Mushfiqur Rahim not out 55
Shakib Al Hasan c Hope b Powell 30
Soumya Sarkar c Powell b Chase 19
Mahmudullah Riyad not out 14
Extras (lb6, w13, nb2) 21
TOTAL (5 wkts, 35.1 overs) 196
Did not bat: Mehidy Hasan, *Mashrafe Mortaza,
Mustafizur Rahman, Rubel Hossain
Fall of wickets: 1-37 (Tamim), 2-42 (Imrul),
3-89 (Liton Das), 4-146 (Sakib), 5-175 (Soumya)
Bowling: Roach 6-0-35-0 (w5, nb1),
Chase 9-1-47-2 (w2), Thomas 5-0-34-1 (w3, nb1),
Paul 8-0-37-1 (w3), Bishoo 6.1-0-30-0, Powell 1-0-7-1.
Result: Bangladesh won by five wickets.
Series: Bangladesh lead three-match series 1-0.
Man-of-the-Match: Mashrafe Mortaza.
Toss: West Indies
Umpires: Ruchira Palliyaguruge; Sharfuddoula; TV – Aleem Dar.