Afghanistan off-spinner Mohammad Nabi ran through a panic-stricken Sri Lanka top order in the World Cup on Tuesday with an astonishing spell before rain stopped play.
Sri Lanka came out of the blocks quickly under leaden skies in Cardiff, reaching 144 for one before the halfway point of their innings and were on course for a morale-boosting big score against their unfancied opponents.
But Nabi, who had earlier removed captain Karunaratne for 30, turned the match in the Welsh capital on its head, with three wickets in five balls as Sri Lanka slumped to 146-4.
Shell-shocked Sri Lanka kept on losing wickets at regular intervals, with extras the second top-scorer when rain stopped play after 33 overs.
The turning point of the match was the dramatic 22nd over.
Nabi bowled Lahiru Thirimanne for 25 before having Kusal Mendis caught by Rahmat Shah in the slips for two runs. Angelo Mathews was next to go, for a duck, also caught by Shah.
Fast bowler Hamid Hassan then had Dhananjaya de Silva caught behind for nought by Mohammad Shahzad to leave Sri Lanka in deep trouble.
Thisara Perera was run out for two before Isuru Udana was bowled by Dawlat Zadran for 10.
Leg-spinner Rashid Khan joined the party, having opener Kusal Perera caught behind by Shahzad for 78.
Rain then intervened, forcing the players from the field, with Sri Lanka 182-8 after Nabi had taken four for 30 in nine overs.
Earlier, Afghanistan captain Gulbadin Naib won the toss and sent Sri Lanka into bat, hoping to take advantage of the favourable conditions for bowlers.
But openers Karunaratne and Kusal Perera settled quickly as they shared a stand of 92 for the out-of-form side.
Afghanistan’s bowlers struggled to stop the flow of runs, with Hassan withdrawn from the attack after conceding 30 runs from just two overs.
Sri Lanka’s charge was initially slowed when captain Karunaratne was caught by Najibullah Zadran at long-on off Nabi but there were no signs of the clatter of wickets to come.
Both sides were soundly beaten in their first matches of the tournament in England and Wales.
Former champions Sri Lanka were thumped by 10 wickets by New Zealand on the same ground while Afghanistan went down by seven wickets to defending champions Australia in Bristol.
Afghanistan, playing in only their second World Cup, beat 1996 world champions Sri Lanka soundly in last year’s Asia Cup in the United Arab Emirates.
Sri Lanka have won only one of their 10 one-day international matches this year — against minnows Scotland.