Already-eliminated South Africa dealt a huge blow to Sri Lanka's hopes of moving onto the final four with a thumping nine-wicket defeat of the Asian side in their World Cup match on Friday at the Riverside Ground in Chester-le-Street.
Proteas skipper Faf du Plessis and Hashim Amla's unbroken 175-run stand set the stage for their side's victory on the batting side, while Kagiso Rabada kept the pressure on Sri Lanka's batsmen with the very first ball of the match.
South Africa were kicked out of the tournament after losing six out of their opening seven group stage games, while Sri Lanka had hoped to reach 12 points and the final four with wins in all three of their remaining games after England's defeat to Australia opened up a qualification race.
A World Cup semi-final spot seems a long way off for a Sri Lanka lineup that lost its captain on the first ball before slumping to a nine-wicket defeat.
After putting Sri Lanka in to bat, South Africa were set a target of 204 as seamer Dwaine Pretorius took 3-25 off 10 overs in an innings that was interrupted by a swarm of bees that invaded the pitch and sent the players and umpires to the floor.
After the early loss of Quinton de Kock, already-eliminated South Africa never looked troubled as Amla (80 not out) and Du Plessis (96 not out) put on 175 for the second wicket, playing with the kind of freedom not seen before by the team in a dismal tournament for the side.
Sri Lanka needed victory to move level with fourth-placed England in the race for semi-final places, but struggled with bat and ball against an opponent who have now beaten them in 17 of their last 19 meetings.
Sri Lanka innings
Sri Lanka were bowled out for just 203 and faced an uphill task to secure a win that would lift them level on points with England.
The 1996 winners, put in to bat, were all out in the 50th over in the northeast of England after losing wickets at regular intervals throughout their innings.
Recalled seamer Dwaine Pretorius was the pick of the South African bowlers, taking 3-25 in his 10 overs while Chris Morris also finished with three wickets.
“It was a tough wicket,” said Pretorius. “We just had to be disciplined and luckily that plays into my game plan.
“I think everyone backed each other well and that was probably our most disciplined performance of the tournament so far.
“The wicket looks slightly slow with a big outfield. Good cricket shots, good partnerships and running hard will be key.”
Sri Lanka had a disastrous start to their innings when captain Dimuth Karunaratne was caught at slip by South Africa captain Faf du Plessis off the first ball of the match, delivered by paceman Kagiso Rabada.
Kusal Perera and Avishka Fernando batted positively to take the score to 67 for one in the 10th over before Fernando (30) mistimed a shot, sending the ball steepling into the air before it was taken by Du Plessis.
Perera (30) was next to go, chopping a Pretorius delivery onto his stumps as Sri Lanka slipped to 72-3 in the 12th over.
Angelo Mathews was bowled by Morris for 11 and Kusal Mendis departed for 23.
Every recognised batsman apart from Karunaratne reached double-figures but none went on to play a big innings.
South Africa innings
South Africa lost only one wicket ─ Quinton de Kock (15) bowled by a trademark Lasith Malinga yorker in coasting to victory with more than 12 overs to spare.
Skipper Faf du Plessis scored 96 and Hashim Amla 80 in an unbeaten 175-run stand, easily South Africa's best of the tournament.
Du Plessis posted his third half-century of the tournament with a single from Suranga Lakmal, then drove the next delivery over temporary broadcasting scaffolding and out of the ground, requiring a used replacement ball for the rest of the match.
Amla was on 68 when was given out lbw to Jeevan Mendis with the total at 166-1 and had just about left the field when the referral to the TV umpire showed the ball pitched outside leg stump and he had to make his way back to the crease.
The South Africans were already out of semifinal contention after winning just one of their first seven games, but had won 16 of their previous 18 ODIs against Sri Lanka and got on top quickly.
Toss, pre-match chatter
South Africa skipper du Plessis won the toss and sent Sri Lanka in to bat in the World Cup group game at Durham.
"It's a fresh pitch, so we'll be looking to use the seam movement early today," South Africa skipper Faf du Plessis said after the toss.
Sri Lanka are still in contention for a playoff spot after their upset win over England. Nuwan Pradeep has been sidelined with an illness and has been replaced by paceman Suranga Lakmal in the only change to the Sri Lanka lineup that beat England last Friday.
South Africa have made two changes to their lineup, with veteran JP Duminy coming in for David Miller and Pretorius starting in place of fast bowler Lungi Ngidi.
The weather forecast for Durham is for a cloudy start, clearing to sunny in the afternoon.
Sri Lanka: Dimuth Karunaratne (captain), Kusal Perera (wk), Avishka Fernando, Kusal Mendis, Angelo Mathews, Dhananjaya de Silva, Jeevan Mendis, Thisara Perera, Isuru Udana, Suranga Lakmal, Lasith Malinga.
South Africa: Hashim Amla, Quinton de Kock (wk), Faf du Plessis (captain), Rassie van der Dussen, Aiden Markram, JP Duminy, Dwaine Pretorius, Andile Phehlukwayo, Chris Morris, Kagiso Rabada, Imran Tahir.