Jofra Archer celebrates taking the wicket of Dimuth Karunaratne for one run during the group stage match at Headingley on Friday. AFP
Jofra Archer set the tone by removing Sri Lanka captain Dimuth Karunaratne in his first over on Friday, helping to set England a target of 233 to retake the lead in the World Cup standings.
Archer finished 3-52, his fifth three-wicket haul in six games, and pulled even with Australian paceman Mitchell Starc at the top of the tournament's bowling list with 15.
Fellow fast bowler Mark Wood took 3-40 to improve his tally to 12, and wrist-spinner Adil Rashid took two wickets with consecutive balls in a haul of 2-45.
Angelo Mathews scored a defiant, unbeaten 85 from 115 balls to guide Sri Lanka to 232-9 at the end of the innings.
The Sri Lankans had three 50-plus partnerships but didn't consolidate, and twice lost wickets in pairs.
It started badly for them after winning the toss and electing to bat, slumping to 3-2 in the third over after Archer had the captain caught behind and Chris Woakes dismissed Kusal Perera two balls later.
Avishka Fernando scored 49 from 39 balls and was within a shot of his half-century when he guided a ball from Wood to third man to end a 59-run third-wicket stand.
That brought Mathews to the crease and he shared a 71-run partnership with Kusal Mendis, who scored a patient 46 from 68 balls before Adil Rashid struck twice in two deliveries.
He had Kusal Mendis caught at mid-wicket by Eoin Morgan and then took a return catch for a soft-dismissal against Jeevan Mendis as Sri Lanka slipped to 133-5.
Dhananjaya de Silva (29) nonchalantly drove the hat-trick ball for two runs and combined with Mathews in a 57-run stand before Archer struck with a slower ball and Joe Root took a diving catch at mid-on in the 44th over.
Archer had Thisara Perera (2) caught at third man in his next over and Wood picked up two tail-end wickets.
After 26 games at the World Cup, it's the first match at Headingley.
England took advantage of a pitch offering some turn and used three spin bowlers, with Rashid the most successful. All-rounder Moeen Ali marked his 100th one-day international with an economical 10-over spell costing 0-40.
England move back to the top of the standings with its fifth win, edging ahead of defending champion Australia on run-rate.
Sri Lanka needs a win to remain in serious contention after a win, two washed-out games and two losses.
England: Jonny Bairstow, James Vince, Joe Root, Eoin Morgan (capt), Ben Stokes, Jos Buttler (wkt), Moeen Ali, Chris Woakes, Adil Rashid, Jofra Archer, Mark Wood
Sri Lanka: Dimuth Karunaratne (capt), Kusal Perera (wkt), Avishka Fernando, Kusal Mendis, Angelo Mathews, Dhananjaya de Silva, Jeevan Mendis, Thisara Perera, Isuru Udana, Lasith Malinga, Nuwan Pradeep
Umpires: Paul Wilson (AUS), Marais Erasmus (RSA)
TV umpire: Bruce Oxenford (AUS)
Match referee: Richie Richardson (WIS)
Associated Press / Agence France-Presse
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.
Australia captain Aaron Finch equalled his highest one-day international score of 153 as he powered the World Cup holders to 334-7 against sloppy Sri Lanka on Saturday.
Chris Morris was bowling his ninth over and Suranga Lakmal was on strike when the bees descended upon the ground after the fifth ball was bowled.
Portugal star striker Cristiano Ronaldo will not face rape charges, US prosecutors have announced.
With skateboarding making its Olympic debut in Japan next year, Cuban skateboarders are hoping their sport will finally be accepted at home.
Retired superstar Floyd Mayweather has been named "special advisor" to China's boxing team as they look to improve their medal count at the 2020 Tokyo Olympics, the Chinese Boxing Federation said.