But two wickets in successive balls for Kyle Jarvis saw the tourists make an early breakthrough as West Indies ended the day on 18 for two after being put in for the last 11 overs of the day. They trail by 193 runs in Bridgetown.
Samuels returned from injury to take an extraordinary one-handed catch in the gully and then four wickets with his off spin for a test best return of 4-13, slicing through the lower order as the spinners dominated despite a determined start by the West Indian quicks.
It was the first time in more than a half century at the Kensington Oval that spinners had taken seven wickets in an innings for West Indies. Shane Shillingford marked his recall to the team with 3-58 off a workman-like 22 overs.
A three-man quick attack pummelled Zimbabwe's openers with short deliveries on a pitch with variable bounce but did not get much profit.
Tino Mowoyo, hit on the chest with the first ball of the day, showed bravery in withstanding a barrage of body blows to get through to lunch and then reach his 50 shortly thereafter before falling to a close on catch by Darren Powell off Shillingford.
He was the only Zimbabwean batsman to get going although several others threatened with good starts before falling cheaply.
Samuels took a wicket with his first ball, clean bowling Craig Ervine (29) and then had Graeme Cremer caught at point for 25 before claiming the last two wickets.
West Indies went in for the last hour and lost two wickets. Jarvis had Kieran Powell leg before for just five and then trapped nightwatchman Kemar Roach plumb with his very next ball - a seventh of the over as the umpire inadvertently afforded him a bonus ball.