After the morning and afternoon sessions were lost to wet conditions, West Indies rebounded from the early loss of Leon Johnson and were doing a decent job of frustrating South Africa who knew they needed quick wickets to make up for the time lost in the day.
But, once Marlon Samuels went for 74, quick wickets were exactly what they got as West Indies went from 182 for three to 215 all out, with the final six wickets costing South Africa only 13 runs.
South Africa, who lead the three-match series 1-0, set about chasing their victory target of 124 but suffered an early loss with Sulieman Benn bowling out Alviro Petersen for a duck with what proved the final ball of the day. Thanks to Dean Elgar’s efforts at the other end, the Proteas will resume on nine for one on Tuesday.
When play began after an early tea was taken in the afternoon, West Indies resumed on 88 for two, four runs behind.
They suffered the early loss of Leon Johnson, who added only seven to his overnight scored before nicking a Morne Morkel delivery behind and into the hands of Hashim Amla on 44.
Soon after, Shivnarine Chanderpaul had a lucky escape as he too edged Morkel behind into the slips, with the ball falling just short this time.
Then, when the veteran left-hander was on 10 he was given out, apparently caught behind, but he reviewed the decision and got a reprieve as replays showed there was no edge.
So began a period of frustration for South Africa and Samuels and Chanderpaul dug in to build a partnership worth 87.
It was eventually broken when Samuels went for something spectacular, but his big hit off Simon Harmer did not quite have the power and he was caught by Elgar near the boundary.
It was the breakthrough the hosts needed, and the wickets came thick and fast.
Dale Steyn joined in the action by removing Jermaine Blackwood for 13 with a full delivery which crashed against the middle stump.
Steyn then added the scalp of Denesh Ramdin, the first of three ducks for West Indies, as he spooned the ball up for Stiaan van Zyl to snare in front of square leg.
Jason Holder managed just two runs before playing a lazy shot off Harmer which picked out Amla at mid-wicket, and Jerome Taylor followed for a duck with an awful shot straight to Elgar at deep midwicket, giving Harmer his fourth wicket.
The collapse was in full flow with Steyn bringing an edge from Benn for another duck, and it was over in fittingly shambolic fashion when Chanderpaul, having just reached his half-century, was run out when Shannon Gabriel called for a quick single which was not there.