South Africa's Quinton de Kock top-scored with a fluent 94 as they cruised to a 113-run victory over Sri Lanka and a 2-0 lead in their five-match One-day International series on Wednesday.
South Africa claimed an eight-wicket victory in the opening match on Sunday and were dominant again despite losing their last six wickets for 31 runs as they posted a below-par 251 all out.
Their bowlers picked up wickets at regular intervals though and dismissed Sri Lanka for 138 in 32.2 overs to claim an emphatic win.
De Kock blazed away at the top of the order after South Africa were sent in to bat, racing to 94 from 70 balls before he top-edged a Thisara Perera delivery while attempting the six that would have taken him to his century.
South Africa captain Faf du Plessis (57) kept up his good run of form, but the home side will be concerned about a late order collapse that restricted their total when 300 had seemed a minimum at the midway point of the innings.
Sri Lanka never looked in control of the chase and lost wickets at regular intervals, with Oshada Fernando (31) providing the top score in their meagre total.
South Africa seamer Lungi Ngidi (2-14 in 5.2 overs) was the pick of the home attack, but fast bowler Kagiso Rabada (3-43), leg-spinner Imran Tahir (2-39) and newcomer Anrich Nortje (2-25) also impressed.
South Africa can wrap up the series in the third ODI in Durban on Sunday.
Why Dhoni should bat in the lower order in World Cup...
Time for a review: Not technique but mindset is Dhawan's problem
Revealed: Star India's IPL plans
Champions League: Man United's stunning comeback shatters PSG