Shakib Al Hasan's second consecutive World Cup century propelled Bangladesh to their highest successful ODI chase as they defeated the West Indies by seven wickets.
Set 322 for victory, Shakib - the No 1 ODI all-rounder in the world, brought up his hundred off only 83 balls and finished unbeaten on 124 having shared an unbroken 189-run third wicket stand with Liton Das (94no), as Bangladesh reached their target with 51 balls spare.
Earlier, Shai Hope struck 96, Evan Lewis contributed 70 and Shimron Hetmyer blasted 50 off only 25 balls as the West Indies made 321-8 but their bowlers were unable to defend what should have been a challenging target.
The win moves Bangladesh up to fifth in the table, with five points from five matches, while the West Indies move down to seventh after a third loss from five games.
Soumya Sarkar and Tamim Iqbal made an assured start to the chase before the former guided Andre Russell to straight to Chris Gayle at slip to end the first wicket stand on 52.
Opener Tamim and all-rounder Shakib batted with freedom and without much trouble as they built a 69-run second-wicket partnership but Sheldon Cottrell's spectacular reaction, picking up the ball after it was defended back to him before hitting the striker's stumps, saw Tamim run out for 48.
Though Mushfiqur was caught behind for a single off Oshane Thomas, Liton - on his World Cup debut - batted with ease and a calm head, seeing Shakib bring up his hundred - having hit 13 fours at that stage.
As Bangladesh edged closer to their target Liton let loose, smoking Shannon Gabriel for three successive sixes, and the batsman ended match by pulling the fast bowler away for four.
The West Indies had been put in to bat and an increasingly regular slow start for Chris Gayle was punished when Mohammad Saifuddin lured the opener into poking at a ball that was moving away from him and a thin edge was snaffled behind the stumps.
Hope and Lewis did a brilliant job of reviving the West Indies' innings despite doing so at a relatively slow rate, sharing a vital 116-run second-wicket partnership before the latter sliced Shakib (2-54) to long-off.
Nicholas Pooran (25), Jason Holder (33 off 15 balls) and Darren Bravo (19) all added vital contributions but it was Hetmyer's 25-ball half-century that propelled his side past 300.
Hetmyer smoked four fours and three sixes in his tournament-equaling fastest fifty, along with Australia's Alex Carey, but he looked for one big shot too many and skied Mustafizur Rahman straight to Tamim at midwicket to depart for 50 and Russell was dismissed for a duck two balls later as the seamer temporarily stifled the big hitting.
Hope, who was building towards his century by taking sporadic singles, fell an agonising four runs short of three figures - shuffling across his stumps before angling a shot off Mustafizur to Liton at deep backward square as the West Indies finished on 321-8, which proved in the end to be a below-par score.
Watch every game of the ICC Cricket World Cup live on Sky Sports, continuing from 10am on Tuesday with England vs Afghanistan on Sky Sports Cricket World Cup.