An unbeaten half century from Joe Root helped England into a commanding position on the third day of the first Test as they opened up a 261-run lead over South Africa on Monday.
England finished on 172 for three in their second innings, extending their advantage as little went right for the home team with strike bowler Dale Steyn suffering a shoulder injury and vital catches spilled.
Batting is expected to become more difficult as the wicket at Kingsmead deteriorates over the final two days and England have a firm grasp on the opening game of the four-test series.
Root overtook Alastair Cook as England's leading run scorer for the year as he scored 60 not out with James Taylor unbeaten on 24 at the close.
Cook went early again when he was trapped lbw by spinner Dane Piedt for seven and Alex Hales played a poor shot to be caught at long on for 26 before a partnership of 71 between Nick Compton and Root took the game away from South Africa.
Compton was caught behind for 49 by wicketkeeper AB de Villiers off Morne Morkel, who had twice had him dropped in tired-looking errors by a confidence-drained South Africa side.
Steyn had a scan on a potential shoulder injury after he pulled up in the middle of two separate overs, almost an hour apart, with a suspected strain.
South Africa were bowled out for 214 just before lunch despite dogged resistance from opener Dean Elgar, who achieved the rare feat of carrying his bat through the innings and finished on 118 not out.
Elgar, 67 not out overnight, punched the air and pounded his chest in exuberant celebration after reaching 100, the first South African to do so in their last seven Test matches.
England spinner Moeen Ali was destroyer-in-chief with three wickets, ably backed up by Stuart Broad and Steven Finn.
Broad, who finished with figures of 4-25, made an immediate impact with the second ball of the day when he bowled Temba Bavuma for 10.
Moeen dismissed JP Duminy (two), Kyle Abbott (0) and Steyn for 17 to finish with 4-69. Finn took the final two wickets with the new ball.