South Africa fought hard to reach 126-2 at stumps but James Anderson removed No. 3 Zubayr Hamza two overs from the end of the second-to-last day to keep England on top. It will be a world record chase if South Africa somehow wins, with 312 runs still needed in a final-day showdown. Batting out for a draw is also a major challenge and, in reality, England's bowlers are expected to close out a series-leveling victory, which would be their first in Cape Town since 1957.
“It was a massive bonus taking that late one (wicket),” said England batsman Dom Sibley, whose 133 not out played a major role in the tourists' big lead. “But there will be some hard work tomorrow.” South Africa started its second innings with two successive half-century partnerships. Crucially for England, both were broken.
Dean Elgar fell to part-time spinner Joe Denly for 34 off a faint outside edge to wicketkeeper Jos Buttler. It was so faint Elgar was certain he hadn't hit it and called for his dismissal to be reviewed. He was out, ending his 71-run opening stand with Pieter Malan.
Malan, playing his first test, was 63 not out to hold most of South Africa's very faint hopes. Anderson, England's most successful test bowler, was brought back into the attack right at the end of the day and made it count to break the 52-run Malan-Hamza partnership. Anderson celebrated the timely breakthrough with a leap into the air.
With Stokes in rampant hitting form, England raced away in its second innings. Stokes launched seven fours and three sixes in a highly damaging innings that lasted only 1 hour, 15 minutes but appears to have put the test well beyond South Africa's grasp.
England was already in a strong position on 218-4 with a lead of 264 when the day started but Stokes made it utterly dominant. England declared on 391-8 soon after lunch with opener Sibley unbeaten for his first test hundred.
Stokes fell caught on the boundary at long-on and swiped his bat at the ground in frustration that he hadn't managed to land another one in the crowd. But there was little celebration from the South Africans.
The scoreboard damage had been done and there was also a sense of psychological damage with two series-deciding tests to come in Port Elizabeth and Johannesburg. South Africa has been on the receiving end from Stokes before, when he hit a career-best 258 at world-record pace in England's last test in Cape Town four years ago.
This innings wasn't as epic but it will likely be more effective. Whereas England could only draw the 2016 test at Newlands, it's likely to win this one and level the four-match series at 1-1 after South Africa's 107-run win in the opening test.
No team has got near making 400 in the fourth innings at Newlands. The highest at the ground is 354-5 by West Indies in a draw in 2004. The highest successful fourth-innings run chase ever in tests is 418.
“It’s going to to be a tough ask for us to chase that down, let’s be brutally honest,” said Jacques Kallis, the Proteas great who is the new batting coach. “But it's certainly not something we’re ruling out.
"The way you’ve got to do it is you’ve really got to take it ball by ball and fight that ball that you’re facing and try and be there for the next. If you start looking too far ahead ... you can lose focus."
England also is set to be the only visiting team other than Australia to win a test at Newlands since South Africa returned to international cricket after apartheid. Stokes' blitz allowed Sibley to move steadily to his century with a sweep for four. Sibley anchored England's innings for 311 balls and more than eight hours over two days in what would have been the leading headline of the innings if not for Stokes.
Sibley's patience was crucial for England, though, and allowed captain Joe Root, who made 61 on day three, and Stokes to attack at the other end. The opener is playing just his fourth test and his previous highest score was 34.
“That moment I saw the ball going for four (for his century) is what I've been working towards since I was 13 or 14,” he said. “You dream of that moment.”
More AP sports: https://apnews.com/apf-sports and https://twitter.com/AP_Sports