South Africa were reeling on 60 for 6 at the drinks interval during the final session on the fourth day of the second Test against England in Durban yesterday.
Graeme Swann had rocked the hosts with two quick wickets prior to tea before Stuart Broad dismissed Jacques Kallis, AB de Villiers and JP Duminy after the interval.
Swann then trapped South African skipper Graeme Smith lbw for 22 to leave the hosts staring defeat in the face on 50 for 6.
South Africa had reached tea on 37 for two after England declared on 575 for nine.
The home side began their second innings just over an hour before tea and captain Graeme Smith and Ashwell Prince survived the first nine overs in relative comfort.
But off-spinner Swann’s second delivery deceived left-hander Prince (16) by going straight on with the arm, catching the inside edge of the bat and rebounding off the pad to short-leg, where Ian Bell took a fine low reflex catch.
The off-spinner then bowled Hashim Amla for six as the batsman drove loosely and the ball turned sharply through the gate.
England declared nine overs after lunch, Bell finishing as top-scorer with a pugnacious 141 before falling to Dale Steyn with the third new ball.
Morne Morkel, with three for 78, and JP Duminy, three for 89, were the pick of the South African bowlers.
England resumed on 386 for five and South Africa claimed just one wicket in the morning session, Matt Prior falling for 60.
Bell, whose place in the team has been under great scrutiny, continued to bat with immense focus and energy, stroking 10 fours and a six in his ninth Test century but his first since he made 199 against South Africa at Lord’s in July last year.
Bell and Prior extended their sixth-wicket partnership to 112 before Prior’s stumps were rattled by an inside edge after he tried an ambitious cut at off-spinner Duminy.
The day had started badly for the tourists with Paul Collingwood dislocating a finger during fielding practice.
The all-rounder went for an x-ray, which showed no fracture, and Collingwood was given the all-clear to continue playing.
The first Test of the four-match series at Centurion ended in a draw.
Additional reporting by staff writer