South Africa restricted England to 311 for eight in the World Cup opener at the Oval on Thursday as the tournament hosts and favourites made a stuttering start in their quest to win the trophy for the first time.
Ben Stokes top-scored with 89, while England captain Eoin Morgan (57), Jason Roy (54) and Joe Root (51) all made fifties.
But England, who last year set a world record for the highest one-day international total of 481-6 and have often blown teams away with the bat, were repeatedly pegged back by a Proteas side who deployed the slower ball to good effect.
England, after Britain's Prince Harry officially opened the tournament, lost a wicket second ball before Roy and Root shared a stand of 106 that was equalled by Morgan and Stokes.
Balloons feature the colours of the competing nations at The Oval in London. Glyn KIRK/AFP
South Africa captain Faf du Plessis, despite being without injured spearhead Dale Steyn, saw his decision to field rewarded in dramatic style when Imran Tahir struck with just the second ball of the match to dismiss Jonny Bairstow for a golden duck.
Normally it is a paceman who has the first spell.
But Du Plessis gave the ball to 40-year-old leg-spinner Tahir, the oldest player in the tournament, instead and a well-flighted delivery had Bairstow edging to wicket-keeper Quinton de Kock, with the Pakistan-born Tahir running off in a semi-circle -— his familiar celebration.
Roy and Root were both in fine touch and England would have wanted at least one of them to go on to a big score.
But from 107-1, England lost two wickets for four runs in four balls.
Roy flat-batted an intended pull off Andile Phehlukwayo to Du Plessis at mid-off before Root steered Rabada to backward point, where JP Duminy held a sharp catch.
Morgan, whose aggressive approach has been symbolic of England's rise to the top of the one-day international rankings after their woeful first-round exit at the 2015 World Cup, struck the first two sixes of the match off successive balls from fast bowler Lungi Ngidi.
This photo shows the trophy being carried by a performer during the opening ceremony before the match. Reuters
The left-hander's drive over long-off was followed by a pull above long leg.
But having completed a run-a-ball fifty, Morgan's drive off Tahir (two for 61) was well caught low down by a diving Aiden Markram, running in from long-on.
Dangerman Jos Buttler fell for just 18 while left-hander Stokes, trying to break the shackles, saw his 79-ball knock end in the penultimate over when a reverse hit off Ngidi (three for 66) found Hashim Amla at third man.
Agence France-Presse
England: Jason Roy, Jonny Bairstow, Joe Root, Eoin Morgan (capt), Jos Buttler (wkt), Ben Stokes, Moeen Ali, Chris Woakes, Adil Rashid, Liam Plunkett, Jofra Archer
South Africa: Hashim Amla, Quinton de Kock (wkt), Aiden Markram, Faf du Plessis (capt), Rassie van der Dussen, JP Duminy, Dwaine Pretorius, Andile Phehlukwayo, Kagiso Rabada, Lungi Ngidi, Imran Tahir
Umpires: Kumar Dharmansena (SRI), Bruce Oxenford (AUS)
TV umpire: Paul Reiffel (AUS)
Match referee: David Boon (AUS)
Agence France-Presse