Test matches (2): South Africa 0, Sri Lanka 2
One-day internationals (5): South Africa 5, Sri Lanka 0
Twenty20 internationals (3): South Africa 3, Sri Lanka 0
Two Tests against Sri Lanka seemed an inconsequential ﬁnal act of the season as South Africa considered their challenge for the World Cup. All the talk was of who would make the cut for the squad in England. It's true that Sri Lanka had won both Tests when South Africa toured there in July 2018, but since then they had staggered from bad to worse, losing at home to England, before being pummelled in New Zealand and pulverised in Australia.
Dinesh Chandimal had lost the captaincy and his place, and coach Chandika Hathurusinghe - no longer involved in selection - much of his power. But the focus on the World Cup caused the South Africans to take their eye off the (red) ball. Sri Lanka had lost 11 of their previous 13 Tests in the Republic - but the two non-defeats (a draw in 2000-01, and a victory in 2011-12) had both been in Durban. And this time at Kingsmead an incredible unbeaten 153 from Kusal Perera spirited them to a one-wicket victory.
Against shell-shocked opponents, Dimuth Karunaratne's side completed the heist with victory in the Second Test. South Africa's ﬁrst-innings lead of 68 looked crucial on a seaming surface at Port Elizabeth, but Suranga Lakmal grabbed four for 39 as the hosts were bundled out for 128. Newcomer Oshada Fernando and the experienced Kusal Mendis sailed serenely home as Sri Lanka became the ﬁrst Asian team to win a Test series in South Africa in 21 attempts. It was a superb start to Karunaratne's tenure. "The tours of New Zealand and Australia were tough," he said. "We learned a lot. The players realised what to do and what not to do, and that's why we're here. It's a great feeling."
For South Africa the feelings were less good. Their frustrated captain Faf du Plessis admitted to a "massive dent" in his side's conﬁdence, which he found hard to explain: "Maybe mentally the boys were off the boil at the end of a long season, but that's not an excuse. It's probably up there with the most disappointing series loss." As things turned out, it was a sad farewell for home fans to two South African greats, who announced their Test retirements later in the year. Dale Steyn ended up with 439 Test wickets - 18 more than Shaun Pollock - although he aimed to continue in the white-ball formats. Hashim Amla, meanwhile, amassed 9,282 runs in 124 Tests (only Jacques Kallis made more for South Africa) and averaged nearly 50 in ODIs.
Sri Lanka did not win another match on the tour, as the seething South Africans won all eight limited-overs games. Another captain paid the price: Lasith Malinga was jettisoned, and replaced by Karunaratne for the World Cup, even though he had not played a one-day international since the previous tournament, in 2015.
South Africa's World Cup squad, meanwhile, ﬁnally took shape - although Duanne Olivier, the fast bowler who might have been a part of it, shocked his country by signing a Kolpak deal with Yorkshire. J-P. Duminy made a welcome return after a shoulder injury, while Amla, Reeza Hendricks and Aiden Markram were locked in a race for two spots. Amla took time away, as his father was seriously ill, but in the end it was Hendricks who missed out. Leg-spinner Imran Tahir picked up nine wickets in the ODIs, while pacemen Kagiso Rabada, Lungi Ngidi and the rapid newcomer Anrich Nortje all collected eight. Another seamer, Andile Phehlukwayo, claimed seven in the three T20 games.