När Kyle Abbott avskedade Sri Lankas kapten Angelo Mathews för 59 i tredje över dagen i Port Elizabeth, tonen sattes.
Abbott (2-38), Kagiso Rabada (3-77) och Keshav Maharaj (3-86) alla spelade sin roll när de gick 1-0 upp i serien.
Stephen Cooks andra innings 117 hade satt hemmasidan upp för segern.
Sydafrika är på rätt spår för en tredje raka serien seger efter att ha förlorat sin nummer ett ranking i början av året.
Den andra matchen i trematch serien börjar i Kapstaden den 2 januari.
Sydafrika slog Sri Lanka med 206 körningar tack vare en fem-wicket drag i de första 14 overs på sista dagen av det första testet.