Captain Joe Root led from the front as ruthless England took 10 wickets on Sunday to move to the brink of victory in the third test with South Africa reeling on 102-6 in their second innings.
Root claimed test-best figures of 4-31 and was ably assisted by Stuart Broad and Mark Wood as South Africa ended the fourth day still 188 runs adrift.
England need four more wickets to win their 500th overseas test and take a 2-1 lead in the four-match series, while the beleaguered home team will need to bat out the entire day, a task that looks near impossible given they have run out of recognised batsmen.
Vernon Philander (13) and Keshav Maharaj (5) resume on Monday.
England started the day with immediate success and kept up the stranglehold despite a lengthy delay for rain, emphasising the dominance they have enjoyed since day one.
"Our attitude has been good today, and we got our rewards," Wood said.
South Africa were in deep trouble when they resumed on 208-6 in their first innings, still, 291 behind England's mammoth 499 for nine declared.
Any hopes of a defiant stand crumbled immediately as England, inspired by Broad, took four wickets for the addition of one run to end the innings inside the opening half-hour.
South Africa were made to follow-on and were 15-0 when the rain came but once the skies cleared, Wood quickly removed opener Dean Elgar (15) and the struggling Zubayr Hamza for two.
Root came on for a long spell during which he trapped Pieter Malan lbw for 12 and Rassie van der Dussen, who survived several scares, for 10, with Ollie Pope at short leg taking a superb one-handed catch.
The contest was effectively over when Quinton de Kock went cheaply, misjudging his stroke and being acrobatically caught by Wood as Root snagged his third wicket, followed by the all-important scalp of under-pressure skipper Faf du Plessis, who edged one onto his pad and into Pope's safe hands for 36.
Root, a part-time off-spinner spinner, had not taken more than two wickets in a Test innings but the way he ran through the top order should lead to significant South African soul-searching.
"It was a miserable day for us. Nothing we tried went our way," bemoaned South Africa coach Mark Boucher.
The hosts won the first test in Pretoria by 107 runs but were outplayed by England in the second in Cape Town.
The last test starts in Johannesburg on Friday.