Ben Stokes’ final one-day international ended in another England defeat as South Africa won a sweltering series opener in Chester-le-Street by 62 runs.
The world champions, beaten 2-1 by India last week, were first worn down in the oppressive heat by Rassie van der Dussen’s fine 134.
He combined with Aiden Markram, who hit 77 off 61 balls, in a controlled stand of 151, the backbone of the tourists’ 333-5.
England reached 102-0 in response but lost their way against the Proteas spinners as the baked pitch tired.
Stokes, who announced on Monday that this match on his home ground would be his last 50-over international, was out lbw for five.
Joe Root made 86 from 77 balls but was bowled trying to hit out as the run-rate increased out of control.
After Root fell the final three wickets quickly followed and England were bowled out for 271 in 46.5 overs.
Victory gives South Africa a 1-0 series lead going into the second match on Friday at Emirates Old Trafford.