Eoin Morgan steered England to a morale-boosting six-wicket victory over Sri Lanka with a solid half-century in the Champions Trophy in Johannesburg on Friday.
England achieved a 213-run target on a lively track with five overs to spare in the day-night match, thanks to Morgan (62 not out), man-of-the-match Paul Collingwood (46) and Owais Shah (44).
South Africa and Sri Lanka now have one win apiece from two games in the four-team group, while England were playing their first match after being thrashed 6-1 by Australia in a recent home one-day series.
New Zealand have lost their opening match. The top two sides will make it to the semi-finals.
Sri Lankan spinners Muttiah Muralitharan and Ajantha Mendis, who were expected to keep the pressure on England, could not make an impact on a pitch, which hardly helped slow bowlers.
England's win was set up by pacemen James Anderson (3-20), Stuart Broad (3-49) and Graham Onions (2-58) who bowled well to restrict Sri Lanka on a seamer-friendly track.
They were struggling at 19-2 when they lost openers Andrew Strauss and Joe Denly, but Collingwood put the innings on the right track with a vigorous counter-attack.
Paceman Nuwan Kulasekara did the early damage when he removed Strauss (nine) and Denly (five) in his sharp opening spell. Skipper Strauss fell pulling, with Thilina Kandamby taking a superb one-handed catch at short mid-wicket.
Collingwood then eased the pressure with his attractive cameo, advancing down the pitch to swing Kulasekara over mid-wicket for a six and then smashing the next two deliveries for boundaries.
He did not spare seamer Angelo Mathews, hitting two boundaries in an over and later swung Lasith Malinga for two sixes. His flourish ended when he inside-edged a Malinga delivery on to his stumps.
Shah was involved in two partnerships, adding 63 for the third wicket with Collingwood and 76 for the next with Morgan.
Morgan then batted steadily to see England home, hitting seven fours in his seventh half-century in one-day internationals.
Kandamby and Mathews earlier hit impressive half-centuries under pressure as Sri Lanka recovered from a horror start to post a competitive total.
Sri Lanka were struggling at 17-4 before Kandamby (53) and Mathews (52) led the fightback with an 82-run stand for the sixth wicket.
It was a rare sporting gesture by Strauss that allowed Mathews to resume his innings after he was run out.
Mathews turned Onions to square-leg and completed the first run before colliding with the bowler going for a second, with wicket-keeper Matt Prior effecting the run out after receiving the throw.
The Sri Lankan batsman stood briefly at the pitch before walking back to the pavilion, but Strauss called the batsman back.
Mathews, who was then on 51, failed to make the most of the opportunity as he added just one run more to his score before being caught behind off Luke Wright.
Kandamby added 64 for the fifth wicket with Thilan Samaraweera (30) and 82 for the next with Mathews.