Lower order, Lakmal end Sri Lanka's losing run
Suranga Lakmal defended seven runs off the final over to cap off Sri Lanka's most inspired showing in the field and best batting performance of the series so far and end an 11-match losing streak against South Africa.
After rain interrupted both innings, South Africa's target was reduced to 191 runs off 21 overs and they looked set to reach it. They needed 69 runs off the last 10 overs with seven wickets in hand when Sri Lanka started a squeeze which became a strangle. South Africa lost six wickets for 54 runs as Thisara Perera and Lakmal took Sri Lanka to their first win in the five-match series.
Sri Lanka created a position of strength for themselves from the start of the match. Upul Tharanga and Niroshan Dickwella put on their first opening partnership over 50 in the series, Kusal Perera scored a quickfire half-century, Thisara added a fifty of his own and Dasun Shanaka, playing his 10th ODI and first since November 2016, top-scored with 65 off 34 balls.
The only South African bowler who was somewhat spared was the most experienced. JP Duminy was the only member of the attack who conceded at under six runs to the over as the inexperience of the rest of the pack, who were without Kagiso Rabada, showed.
Sri Lanka, on the other hand, will take confidence from their much-improved efforts albeit against a South African XI missing many of its regulars. The depth of the South African attack was tested throughout Sri Lanka's time at the crease and the young seamers struggled with consistency of length and line in damp conditions.
Dickwella took advantage as soon as Lungi Ngidi went too full and was particularly severe on debutant Junior Dala, off whom he took three fours in the eighth over. Duminy, who was introduced in the 10th over, ended the opening stand when Dickwella got a leading edge trying to paddle him past Quinton de Kock but that did little to stop the runs. Tharanga took over from where Dickwella left off and sent Andile Phehlukwayo for back-to-back fours and Wiaan Mulder for a six over long-off. Mulder had the last laugh in that situation when he bowled Tharanga with an offcutter but his yo-yo outing saw him finish as South Africa's most expensive bowler.
Sri Lanka 306 for 7 in 39 overs (Shanaka 65, Thisara 51*, Duminy 2-35) beat South Africa 187 for 9 in 21 overs (Amla 40, Duminy 38, Lakmal 3-46) by three runs (DLS method)