After skipper Sammy struck an unbeaten 60 in the visitors' 211 for nine, he combined with Roach to decimate the hosts' top order inside six overs. Bangladesh were in danger of recording the lowest-ever completed ODI total when they slumped to 13 for five.
At that stage Zimbabwe's record low of 35 against Sri Lanka eight years ago still took some beating, but Mahmudullah at least saved his side from that fate with 56 not out. It was still not nearly enough to prevent a 75-run defeat that leaves the series to be decided in the fifth and final game at the same venue on Saturday.
Anamul Haque and Naeem Islam departed from consecutive balls in Sammy's first over to start the rot, but the Windies skipper failed to grab his hat-trick when the next ball caught Mushfiqur Rahim too high on the pad.
The pace of Roach was then too much for Tamim Iqbal and Nasir Hossain in the next over, and it got worse for the hosts when Sammy grabbed his third - Mominul Haque pulling straight to Kieron Pollard. Remarkably, with five wickets down, Hossain's contribution of two was the best score in the top order.
Skipper Mushfiqur and Mahmudullah set about rectifying that, and briefly threatened to establish a partnership to worry West Indies, until Sunil Narine broke their 74-run resistance.
Mushfiqur was stumped and, while Mahmudullah continued on to his half-century, the Bangladesh tail was mopped up by spinners Veerasammy Permaul and Dwayne Smith to finish on 136 all out.
Sammy had earlier been required to perform a repair mission with the bat after his top-order also folded, losing four for eight at one stage. That left the Windies 79 for five, although they at least got some sort of contribution from their top three - Chris Gayle (16), Kieran Powell (26) and Marlon Samuels (27).
Sammy and Darren Bravo (34) set about piecing together a respectable target in a 43-run stand from 67 balls before the latter offered a return catch to Sohag Gazi.
With Mahmudullah (three for 46) then starting to trick his way through the tail Sammy upped his attack, supplying some late hitting to reach his unbeaten 60 from 62 balls and edge his side past 200.
- Sports & Recreation