South Africa secured their place in the Champions Trophy semi-finals with a dominant seven-wicket victory over England, who ended their campaign winless and on a seven-match losing streak.
England, already eliminated and without Jos Buttler as captain, produced another disappointing performance, failing to challenge a South African side missing key players due to illness and injury.

Opting to bat first in Karachi, England struggled from the outset. Phil Salt struck two boundaries in the opening over but fell attempting another aggressive shot off Marco Jansen. Jamie Smith and Ben Duckett followed soon after, leaving England reeling at 37 for 3.
Joe Root (37) and Harry Brook (36) rebuilt with a 62-run stand, but their partnership was broken when Jansen took a stunning catch at long-on to dismiss Brook. Root was soon bowled by Wiaan Mulder, and England collapsed once more. Buttler (21) fought briefly but lacked support as England folded for 179 in the 39th over. Jansen (3-39), Mulder (3-25), and Keshav Maharaj (2-34) led South Africa's disciplined bowling effort.
Needing 180 for victory, South Africa lost Tristan Stubbs early to Jofra Archer, while Ryan Rickelton looked promising before being bowled for 27. At 59 for 2, the match was evenly poised, but Rassie van der Dussen and Heinrich Klaasen took control with a 127-run partnership. While van der Dussen (72*) played a steady knock, Klaasen (64) was the aggressor, hitting six of his 11 boundaries through the covers. Klaasen fell to Adil Rashid, but David Miller finished the chase emphatically with a six, sealing victory in the 37th over.
This win marks South Africa's third consecutive knockout qualification in ICC tournaments. Their semi-final opponent will be decided after India and New Zealand face off on Sunday, with South Africa set to play the loser of that match in either Dubai or Lahore.