Stuart Broad took three wickets in 15 balls to put England on course for near-certain victory in the second Test at Kingsmead.
At the ground where he was hit for six sixes in one over by India's Yuvraj Singh in the 2007 World Twenty20, Broad returned with a vengeance as South Africa lurched to 76 for six by the time bad light brought an early close on day four.
England declared 232 runs in front this afternoon, after Ian Bell (141) had vindicated his controversial selection with his ninth Test hundred in a total of 575 for nine.
Bell then pulled off a smart catch at silly point to help Graeme Swann (three for 22) inflict the initial damage as South Africa set out to bat four-and-a-half sessions to prevent England going 1-0 up with two matches to play.
But it was Broad's elimination of Jacques Kallis, AB de Villiers and JP Duminy that accelerated the slide as he somehow mesmerised each of the three frontline batsman into playing no shot when one was required in murky light after tea.
After Swann had opener Ashwell Prince expertly caught by Bell via bat and pad and then bowled number three Hashim Amla through the gate, Broad (three for 18) took over.
Kallis lost his off-stump, to a length ball which nipped back off the seam; an lbw decision against De Villiers stood after review, and then Duminy also paid for a faulty leave - bowled first ball via an inside edge after attempting to pull his bat outside the line.
Broad had two wickets in two, but Mark Boucher denied him a hat-trick.
Instead, it was Swann's turn again.
This time, his victim was home captain Graeme Smith - who had watched the mayhem from the non-striker's end after the calm of an opening stand of 27, only to become the fifth batsman to fall for the addition of only 13 runs.
He took a punt on reviewing an lbw decision but learned only that Swann's off-spin had hit him bang in front.
Bell's earlier contribution was put firmly in the shade, but that should not mask the fact he played a major role in creating England's winning opportunity.
He shared a sixth-wicket century stand with Matt Prior (60) to augment the gains of Alastair Cook and Paul Collingwood - who gave England a scare before play today when he dislocated his index finger, before x-rays revealed no break.
Bell, meanwhile, was a controversial selection here as an extra batsman many contended England did not need.
But in his most productive position of number six, he reached his first hundred since July last year - against these same opponents - with a lofted drive over mid-on off Paul Harris for his eighth four to go with one six from 172 balls.
He celebrated with arms momentarily aloft and by pointing to the England crest on his shirt - an animated gesture, by his under-stated standards. In the bigger picture, Bell's contribution was an invaluable one as England increased their tempo following Cook and Collingwood's painstaking efforts.
Prior's 77-ball 50 was a handy 'assist' too.
He passed his half-century with a swept six off Duminy which just cleared Dale Steyn on the square leg boundary.
Duminy got his revenge in his next over when Prior, chasing runs with impunity, bottom-edged an attempted cut on to the base of his stumps.
England were in a position to dictate the remainder of the match but dawdled a little up to lunch, and Broad needed 59 balls to make 20 either side of the break.
Swann showed much more urgency, passing Broad's tally in 13 balls only to fall to the next when he poked a catch off Steyn to a tumbling Prince at mid-on.
Bell's eventual departure, toe-ending a catch behind off Steyn, was followed within two overs by what seemed a belated declaration.
It left Smith and Prince with an hour to bat to tea.
They seemed to be having no trouble doing so, until Swann was introduced in only the 10th over and - as has become his habit - struck an almost immediate blow.