Pallekele, Jul 28: Tillakaratne Dilshan hit his 17th one-day century as Sri Lanka scored 239-2 in 44 overs on Sunday to thrash South Africa by eight wickets in the fourth one-day international.
Sri Lanka took an insurmountable 3-1 lead in the five-match series.
Dilshan scored an unbeaten 115 and added 184 runs for the second wicket with Kumar Sangakkara, out for 91.
The pair came together after Sri Lanka lost Mahela Jayawardene for 12.
Dilshan faced 130 deliveries and hit 16 boundaries while Sangakkara smashed two sixes and eight boundaries during his 101-ball innings.
Earlier, Sri Lankan spinner Ajantha Mendis took 4-51 and fast bowler Lasith Malinga returned 3-52 to help restrict South Africa's innings to 238 all out in 48.4 overs.
Their efforts helped reverse a solid start from the tourists who chose to bat and reached 118-1 at one stage.
“(I) was a bit worried after I lost the toss,” Sri Lanka captain Angelo Mathews said. “We did well to hold them back. We wanted to keep them to under 250.”
South Africa's No. 3 batsman Jean-Paul Duminy hit two sixes and seven boundaries for a fighting 97.
His 101-run partnership for the second wicket with Hashim Amla (77) provided South Africa with a solid foundation to aim for a big score.
However, Sri Lanka picked up regular wickets in the middle order to regain control.
Duminy was the last man out, bowled by Mendis for his fourth wicket. Mendis also accounted for David Miller (1), Farhaan Berhardien (0) and tailender Morne Morkel (0).
Amla entered an injury-hit series with a 71-ball innings which included nine boundaries.
South Africa slipped from 172-3 to 205-9 before Duminy and No. 11 Lonwabo Tsotsobe gave their team a competitive total.
The fifth ODI is in Colombo on Wednesday.