South Africa 246 for 6 (De Kock 87, Du Plessis 49, Dananjaya 3-60) beat Sri Lanka 244 for 8 (Mathews 79*, Dickwella 69, Phehlukwayo 3-45) by four wickets
South Africa chased successfully for the second time in the series, and on this occasion under lights, after their bowlers kept Sri Lanka under 250 in an innings that never really got going. As was the case in the first ODI, South Africa's attack won the match in the first half, when they restricted Sri Lanka to a modest total.
The six-man visiting attack was impressive as a collective but South Africa will be particularly pleased with the performance of their two young allrounders, Wiaan Mulder and Andile Phehlukwayo. After conceding 64 runs in six overs on Sunday, they gave away just 71 runs in 16 overs in this innings, and took four wickets between them. Phehlukwayo was impressive at the death with his use of the knuckle ball while Mulder had the best economy rate of the pack: 3.71.
Similarly, South Africa will be pleased with the return to form of Hashim Amla and Quinton de Kock, both of whom benefited from a ragged Sri Lankan effort in the field, which only adds to the overall carelessness that has defined the home team so far. Soft dismissals, dropped catches and misfields undermined their quest to level the series and left South Africa one win away from the trophy.
Lungi Ngidi caused the early damage with two wickets in two balls in his first over. Upul Tharanga chased a short, wide ball and nicked off while Kusal Mendis fell over a flick and was hit in front of middle stump. Unlike on Sunday, when 11 for 2 became 36 for 5, this time Niroshan Dickwella was on hand to steady Sri Lanka.
His intent seemed clear when he chipped Kagiso Radaba over mid-off but it became clearer when he made room for himself to drive a full ball through the covers and then ramped Rabada over the slips. Sri Lanka's run-rate was at seven after the first six overs and with the new-ball bowlers coming to the end of their opening spells, a major assault could have been on the cards.
But Mulder and Phehlukwayo conceded only 24 runs in the seven overs they bowled in tandem and created pressure that led to a wicket, Kusal Perera pulling Phehlukwayo to mid-on.
Dickwella survived the squeeze, despite getting struck on the ribs by Mulder - an injury that saw him abandon wicketkeeping duties early in the South African innings and necessitated an x-ray - and welcomed Rabada back for a second spell with a powerful strike through mid-on. He was also severe on the spinners and brought up his fifty off Tabraiz Shamsi, off 58 balls, to record his first half-century since August last year against India at the same venue.
Angelo Mathews could afford to operate mostly as a spectator while Dickwella went on the attack and contributed a sedate 24 off 41 balls to their 67-run fourth-wicket partnership. The stand, however, ended when Dickwella bottom-edged a loose ball onto his off stump to gift Phehlukwayo a second wicket.
Mathews had to take over the role of aggressor but could not accelerate the run rate past five an over. Mathews brought up 50 off 71 balls and Sri Lanka scored just 51 runs in their last 10 overs, and 28 in the last five, leaving South Africa with a fairly straightforward second-innings task.
Still, Sri Lanka had opportunities for early wickets but were either too unlucky or too inept to take them. Hashim Amla was dropped on 4 when he hit the ball straight to midwicket but it popped out of Kusal Perera's hands. Two balls later, Amla inside-edged Suranga Lakmal onto his pad and the ball could have rolled onto the stumps but settled at Amla's toes. In the next over, de Kock should have become Kasun Rajitha's first ODI wicket when he clipped a ball straight to midwicket but Akila Dananjaya made a mess of the chance. Two balls after that, de Kock offered Rajitha a tough chance in his follow-through but the bowler could only deflect it over the umpire. And just to make things worse, fellow debutant Prabath Jayasuriya misfielded at cover to give de Kock his fifth boundary.
Sri Lanka managed to hold onto a catch when Amla handed Dananjaya a return catch to depart for a run-a-ball 43 in his most free-flowing innings of the tour so far. De Kock's form progressed further and two balls after Amla's dismissal brought up his fifty off 43 balls. The same did not happen for Aiden Markram, whose top score in seven innings on the tour is 19, and was he caught at slip off a Dananjaya legbreak.
De Kock's response was back-to-back boundaries and he looked set for a hundred - especially when Sri Lanka unsuccessfully reviewed for a catch when he was on 77 - but smacked a full ball to Lakmal at midwicket to finally gave Rajitha his first scalp. Du Plessis took over the anchor role and added to his massive six over cow corner off Prabath with a second six off Rajitha, straight down the ground. But du Plessis also fell short a milestone, chipping a return catch to Dananjaya when he was on 49.
David Miller gave Lakmal his 100th ODI wicket when he threw his bat at a delivery outside off to edge to slip, which may raise eyebrows about his form. South Africa also lost JP Duminy to a reckless shot, when he sent a catch straight to extra-cover, but they still finished the game with 43 balls to spare. Fittingly, Mulder and Phehlukwayo were there at the end.