Afghanistan has upset another former champion with Hashmatullah Shahidi's men taking down 1996 winners Sri Lanka by seven wickets to continue their memorable campaign at the Cricket World Cup.
Their bowlers had laid the foundation of their third win in six matches when they bowled out Sri Lanka for a below-par 241 in 49.3 overs.
Three of their top five batters, including Shahidi, then produced half-centuries in a clinical chase which they accomplished in 45.2 overs to move to fifth place in the points table.
Azmatullah Omarzai (73) scored the winning run with Shahidi (58) looking on from the other end.
Afghanistan, who registered one win in the 2015 World Cup and none in 2019, now have an outright chance of making the last four in India.
"Quite happy and proud of the team," Shahidi said.
"The chase was very professional and I am very happy about it."
Shahidi and his men had stunned holders England and 1992 champions Pakistan earlier in the competition and they proved those were no flukes with yet another impressive display against Sri Lanka.
Put into bat, several Sri Lankan batters got their eyes in but could not quite capitalise on those starts.
After the fall of Dimuth Karunaratne in the sixth over, Kusal Mendis (39) forged half-century partnerships with Pathum Nissanka (46) and Sadeera Samrawickrama (36) to steady the innings.
At 134-2 in the 28th over, Sri Lanka looked well placed to reach the 275-mark but the plucky Afghans struck at regular intervals to peg them back.
Angelo Mathews and Maheesh Theekshana raised 45 quick runs for the eighth wicket, but Sri Lanka still fell short of the 250-mark.
Afghan left-arm quick Fazalhaq Farooqi claimed 4-34, which fetched him player-of-the-match award.
Afghanistan lost Rahmanullah Gurbaz in the first over, but Rahmat Shah (62) and Ibrahim Zadran (39) calmed the nerves with a 73-run partnership.
Kasun Rajitha dismissed Rahmat but not before the batter had brought up his second successive fifty of the tournament.
Shahidi and Omarzai mixed caution with occasional aggression in their unbroken century stand to take Afghanistan closer to the target.
With victory in sight, both decided to play their shots and Azmatullah scored the winning run when he attempted to hit a six and was dropped at deep midwicket.
"I think we were a little bit short of runs," Sri Lanka captain Mendis said after their fourth loss in six matches.
"We needed 280 or 300 on this pitch. I think the bowlers did well in the first 10 overs but it was tough after that."