Lasith Embuldeniya took five wickets for Sri Lanka but Zimbabwe's promising start to the first Test continued.
Faf du Plessis will not quit as captain before the fourth Test but it could be his last at home in the longest format.
England moved into a 2-1 series lead over South Africa and Joe Root saluted the contribution of their young players.
Keshav Maharaj belatedly delayed England with some big hitting, but South Africa were beaten by an innings and 53 runs at St George's Park.
South Africa have named an enlarged squad for the fourth and final Test against England in Johannesburg.
England took 10 wickets for 103 runs on day four of the third Test and Mark Boucher delivered a few home truths to the Proteas.
England captain Joe Root took four wickets, and fast bowler Mark Wood could only admire as the part-time off-spinner tormented South Africa.
Craig Ervine helped Zimbabwe have the best of the opening day of their Test series against Sri Lanka in Harare.
Captain Joe Root is better known for his batting, but his bowling masterclass left England four wickets from victory in the third Test.
Stuart Broad and Sam Curran were in devastating form as England dismantled South Africa and enforced the follow-on.