Kagiso Rabada took his second five-wicket haul of the game and reached the 100-wicket milestone as South Africa wrapped up a comfortable victory by an innings and 254 runs over Bangladesh in the second Test in Bloemfontein to win the series two-nil.
The 22-year-old Rabada returned figures of 5-30 in 11 overs, to go with his 5-33 in the first innings, as the Proteas bowled the Tigers out for 172 in their follow-on innings with the game finishing in the second session on the third day at the Mangaung Oval.
Resuming the third morning on 7/0, the tourists were quickly in trouble after Rabada got rid of Soumya Sarkar (3) and Mominul Haque (11) with the score on 29/2.
Duanne Olivier (1-39 in 11 overs) took the wicket of Imrul Kayes (32) while Wayne Parnell (1-31 from 5 overs) trapped visiting skipper Mushfiqur Rahim (26) in front to leave the tourists on 92/4 at lunch.
Mahmudullah (43) and Liton Das (18), who scored 70 in the first innings, added 43 for sixth wicket, but Andile Phehlukwayo broke the partnership when he bowled Das with the batsman not offering a shot.
Rabada, who came into the third day on 97 Test wickets, then got to the magical three-figure mark when Dean Elgar took a smart catch in the gully to dismiss Mahmudullah.
The right-arm paceman was the youngest South African to reach 100 Test wickets while he was also the fourth quickest to the milestone in just his 22nd Test.
Rabada then bowled both Taijul Islam (2) and Rubel Hossain (7) to complete his sixth five-wicket haul in Test cricket and tit was also the third time he took 10 wickets in the match (match figures of 10-63).
Phehlukwayo finished off the game when he bowled Mustafizur Rahman with the South African seamer finishing with figures of 3-36 in 9.4 overs.
The Proteas were always on the front foot when they put on a total of 573/4 before bowling Bangladesh out for 147 on day two.
The home team completed a series clean sweep after winning the first Test in Potchefstroom by 333 runs.