Kumar Sangakkara smashed an unbeaten 134 off 135 balls as Sri Lanka stunned England by seven wickets in a high-scoring thriller on Thursday to stay afloat in the Champions Trophy.
Scorecard | Schedule | Stats | Points Table | Teams and Squads
The Islanders, chasing England's seemingly impregnable 293-7, launched a spirited chase in the day-night game at the Oval to surpass the target in 47.1 overs and throw open the semi-final race from group A. (See: Match images)
Sri Lanka, who would have been knocked out of the tournament had they lost, are now level with England on two points each, one behind group leaders New Zealand.
Australia, the fourth team in the group have one point.
The two semi-final spots will be determined after the last round of matches when England take on New Zealand in Cardiff on Sunday and Sri Lanka clash with Australia at the Oval on Monday.
Left-handed Sangakkara, cheered on by a big Sri Lankan contingent in the packed stands, anchored the chase with his 15th one-day hundred that was studded with 12 boundaries.
Pinch-hitter Nuwan Kulasekara, who was sent in at the fall of the third wicket, hit a quickfire 58 not out during a match-winning partnership of 110 from 71 balls with Sangakkara.
Kulasekara, who had two previous one-day half-centuries to his credit, plundered five fours and three sixes that demoralised the England attack.
Seamer James Anderson claimed two wickets, but Stuart Broad went for 67 runs in 8.1 overs and Tim Bresnan gave away 63 runs in 10 overs.
Sri Lanka's reply began badly when Kusal Perera fell in the third over, caught at mid-on for six while attempting a big shot off the wily Anderson.
Sangakkara then put on 92 for the second wicket with Tillakaratne Dilshan and 90 for the third with Mahela Jayawardene to leave Sri Lanka well-placed on 187-2 in the 36th over.
Dilshan holed out in the deep off Graeme Swann after making 44, while Jayawardene (42) pulled Anderson high to mid-wicket where substitute fielder Jonny Bairstow picked up an easy catch.
England's total revolved around Jonathan Trott's 76 and Joe Root's 68 off 55 balls after Sri Lanka won the toss and elected to field under overcast skies.
Skipper Alastair Cook chipped in with 59 and Ravi Bopara smashed 28 runs from the final over after Sri Lankag grabbed four wickets for five runs towards the end to make it 254-7 in the 48th over.
Bopara boosted the total with three sixes, two boundaries and a two in the 50th over sent down by seamer Shaminda Eranga to return unbeaten on 33 off 13 balls.
Root, the victim of what England cricket authorities said was an "unprovoked physical attack" by Australian batsman David Warner in a Birmingham bar over the weekend, hit five fours.
Cook, dropped twice by the normally agile Dilshan, put on 48 for the first wicket with Ian Bell and 83 for the second with Trott.
England, who were 131-2 in the 29th over, picked up their scoring rate when Root arrived at the crease and reached 201-2 at the end of 40 overs.