Dale Steyn dominated a last-wicket stand of 58 with Makhaya Ntini to alter the balance of the second Test on day two at Kingsmead.
Jacques Kallis' wish for a first-innings 350, from 175 for five, appeared an optimistic target - and the hosts seemed destined soon after lunch to fall short of 300.
But Steyn had other ideas, taking a particular liking to Graeme Swann (four for 110), on the way to 343 all out by mid-afternoon.
That prosperity was an unlikely prospect when play got under way half an hour early - to make up for lost time - on Sunday morning, with the floodlights in action under heavy cloud cover. But overnight pair Mark Boucher and AB de Villiers took advantage of a pitch which provided little for the old ball, in a stand of 63.
England's lines and lengths were not quite as reliable as they had been on Saturday. There were also a series of half-chances through the morning which they might possibly have taken, but nothing clear-cut and deserving of significant self-reproach.
Perhaps the most telling was when De Villiers pushed a single off Swann on 18, just past short-leg Alastair Cook on the full.
England finally registered their first decision review system success of the series, however, when Swann broke the sixth-wicket stand with a delivery which turned enough into Boucher to beat the bat and hit pad.
Umpire Amiesh Saheba had to overturn his original not out, after plenty of initial deliberation from England over whether to review and then from the third official too.
The cost to the flow of the game was around two and a half minutes, but England certainly were not complaining.
With the new ball unsurprisingly taken immediately, De Villiers comfortably survived another DRS lbw call on 46 off James Anderson and was able to reach his 50 off 96 balls, but he got no further before Stuart Broad struck with only the second delivery of a new spell, finding enough swing to take the edge of an attempted drive for a regulation caught behind.