Sammy captured four wickets for 26 runs from 10 overs, as Zimbabwe, chasing 246 for victory from their allocation of 50 overs, were dismissed for 104 in 31.5 overs.
Left-arm spinner Nikita Miller formalised the victory, when he had Ray Price caught at short cover for four.
The result gave West Indies a 2-1 lead in the five-match series, after Zimbabwe won the first ODI by two runs last Thursday at the Guyana National Stadium, where the home team rebounded last Saturday to take the second ODI by four wickets.
The last two ODIs will be played tomorrow and Sunday at the same venue.
Shivnarine Chanderpaul had led consistent batting down the order with 58 from 76 balls to be the rock upon which West Indies built their total of 245 for nine from 50 overs, after they were sent in to bat on a hard, true Arnos Vale Sports Complex pitch.
Kemar Roach then made an early breakthrough, when he bowled Vusimuzi Sibanda for a duck with the third ball of the Zimbabwe chase.
But West Indies were stonewalled, when Brendan Taylor joined Hamilton Masakadza and they added 51 for the second wicket.
Sammy then transformed the complexion of the match, when he snared three of the next four wickets that sent Zimbabwe crashing to 58 for five in the 14th over.
The all-rounder held a return catch to dismiss Taylor for 19, then had Tatenda Taibu and Hamilton Masakadza caught behind for one and 35 respectively.
In between, Dwayne Bravo, making his 100th ODI appearance for West Indies, trapped Stuart Matsikenyeri lbw for a first-ball duck to complete the demolition of the Zimbabwean top order.
West Indies never allowed the Zimbabweans to recover from the wobble, and the visitors lost their last five wickets for 32 runs in 92 balls.
Roach ended with three for 28 from nine overs, and Bravo – in his return from a two-month layoff with a thumb injury – finished with two for 23 from seven overs, as Zimbabwe were dismissed for the lowest ODI total at the ground. Earlier, Chanderpaul was the only West Indies batsmen that carried on after getting a start, when he reached his 50 from 68 balls, driving Greg Lamb through cover for two.
The top-half of the West Indies batting once more struggled against Zimbabwe’s spinners, but Adrian Barath scored 35, Chris Gayle made 33, Dwayne Bravo got 24, and Narsingh Deonarine contributed 21.
Elton Chigumbura and Prosper Utseya collected two wickets apiece to be the most successful Zimbabwe bowlers.
West Indies limped to 84 for one at the halfway mark, after Gayle was stumped off Prosper Utseya, the Zimbabwe captain, in the 16th over.
The home team appeared to be at the crossroads, when Barath was caught at long-on off the same bowler to leave West Indies 86 for two in the 26th over.
But Denesh Ramdin joined Chanderpaul, and they led a recovery with a stand of 65 in the third wicket before they were dismissed off successive balls in the 39th over to leave West Indies 151 for four.
The rest of the West Indies batsmen however, added a vital 92 from the last 10 overs to give the Zimbabwe’s a more challenging target.
SCOREBOARD
WEST INDIES (maximum 50 overs)
*C. Gayle st Taibu b *Utseya 33
A. Barath c Maruma b *Utseya 35
S. Chanderpaul run out (Utseya) 58
+D. Ramdin c *Utseya b Maruma 19
N. Deonarine c Chigumbura b Lamb 21
D.J. Bravo c Matsikenyeri b Chigumbura 24
K. Pollard st Taibu b Cremer 17
D. Sammy not out 7
R.Rampaul run out
(Maruma/+Taibu/Chigumbura) 14
N. Miller b Chigumbura 0
K. Roach not out 2
Extras (lb7, w8) 15
TOTAL (9 wkts, 50 overs) 245
Fall of wickets: 1-48 (*Gayle, 15.3 overs); 286 (Barath, 25.2); 3-151 (+Ramdin, 38.5); 4-151 (Chanderpaul, 38.6); 5-195 (Deonarine, 45.1); 6-207 (Bravo, 46.6); 7-225 (Pollard, 48.4); 8-242 (Rampaul, 49.3); 9-243 (Miller, 49.5)
Bowling: Chirgumbura 9-1-43-2 (w3); Price 10-1-42-0; Lamb 10-0-44-1 (w4); *Utseya 10-0-47-2; Cremer 7-0-43-1; Maruma 4-0-19-1 (w1)
ZIMBABWE (target: 246 from 50 overs)
V. Sibanda b Roach 0
H. Masakadza c wkpr Ramdin b Sammy 35
B. Taylor c and b Sammy 19
+T. Taibu c wkpr Ramdin b Sammy 1
S. Matsikenyeri lbw b Bravo 0
G. Lamb c *Gayle b Roach 7
E. Chigumbura lbw b Roach 10
T. Maruma b Sammy 2
G. Cremer c Miller b Bravo 6
*P. Utseya not out 13
R. Price c *Gayle b Miller 4
Extras (lb1, w4, nb2) 7
TOTAL (all out, 31.5 overs) 104
Fall of wickets: 1-0 (Sibanda, 0.3 overs); 2-51 (Taylor, 9.6); 3-57 (+Taibu, 11.6); 4-4-58 (Matsikenyeri, 12.3); 5-58 (Masakadza, 13.2); 6-72 (Chigumbura, 16.3); 7-75 (Maruma, 19.3); 8-80 (Lamb, 20.2); 9-96 (Cremer, 28.1)
Bowling: Roach 9-1-28-3 (nb2, w1); Rampaul 4-0-23-0 (w1); Bravo 7-0-23-2 (w2); Sammy 10-1-26-4; Miller 1.5-0-3-1
Result: West Indies won by 141 runs
Series: West Indies lead the five-match series 2-1
Toss: Zimbabwe
Man-of-the-Match: Darren Sammy (West Indies)
Umpires: N. Malcolm, S. Taufel
TV umpire: C. Mack
Matchreferee: R. Mahanama
Reserve umpire: G. Greaves