Eighteen wickets fall on the third day as hosts complete 108-run win over the Proteas.
Hashim Amla has quit as South Africa’s Test captain in a surprise move in the middle of the four-test series against England.
Amla, 32, said after the drawn second test at Newlands on Wednesday that he was stepping down immediately.
He took over the captaincy from Graeme Smith but had been under pressure after a lean run of results for the top-ranked Proteas and struggles with his own batting form.
He made a double-century at Newlands and appeared to have turned his form around. Amla said he made the decision two weeks ago.
Cricket South Africa chief executive Haroon Lorgat said vice captain AB de Villiers would take over as captain for the rest of the series. England leads 1-0.