South Africa started the fourth day of the second Test on 15 for one – a deficit of 371 runs – after Australia declared on 575.
But the Proteas were dismissed for just 204 – with off-spinner Nathan Lyon taking three for 58 – as Australia raced to victory by an innings and 182 runs.
Temba Bavuma’s 65 was the only resistance of note before he perished to an ugly slog-sweep at Lyon.
Australia’s seventh win from 11 Tests in 2022 sees them open up an unassailable 2-0 lead over the Proteas.
The hosts’ comprehensive win rarely looked in doubt after David Warner marked his 100th Test by hitting a memorable 200.
Warner, 36, was awarded the player of the match for his first three-figure Test return since January 2020.
The concluding match of the three-Test series starts in Sydney on January 3.
Additional reporting from PA