Mystery spinner Hasaranga (3/13) and pacer Lahiru Kumara (2/30) shared five wickets between them to limit Afghanistan to 144 for 8.
HOW IT HAPPENED
Dhananjaya then took control of the Sri Lankan innings with an unbeaten 66 from 42 balls as the defending Asian Cup champions crossed the line with nine balls to spare.
With this victory, Sri Lanka climb to third place in Group 1.
Afghanistan, on the other hand, dropped out of the semi-final.
Defending a modest total, Sri Lanka started well but Mujeeb ur Rahman (2/24) produced an advantage to score the end of Pathum Nissanka (10) putting the Sri Lankans under pressure. Fazalhaq Farooqi (1/22) threw a young girl into the sequel to tighten the screws.
However, Kusal Mendis (25) reached consecutive limits the next course, both in the middle of the wicket as Sri Lanka lingered at 28 to 1 in the Powerplay.
Rashid Khan (2/31) scored in his first more like Mendis went for a premeditated but sharp sweep for the keeper to catch.
Wanindu Hasaranga wove a web around Afghanistan and was named @aramco #POTM 🌟#T20WorldCup https://t.co/6awsDKhGhO
— T20 World Cup (@T20WorldCup) 1667288236000
While the Afghans tried to build up the pressure by throwing balls, Sri Lanka continued to score at a good pace, drawing the lines and sixes from time to time.
Rashid’s second pass lasted 14 as de Silva hit a fine leg four before sweeping the star spinner over the deep center wicket for a six.
Dhananjaya continued the onslaught with a six against Mohammad Nabi in the next set to keep the required run rate under seven.
With Charith Asalanka (19), Dhananjaya stitched up a 54-point stand followed by a 42-point partnership with Bhanuka Rajapaksa (18) to lead Sri Lanka to victory.
Previously, while the Afghans were able to forge a few partnerships at the top, Sri Lanka did well to strike at regular intervals.
The ball tipped over in the first two overs but after that the Sri Lankan bowlers struggled to get the length right as Rahmanullah Gurbaz (28) assumed the role of the aggressor.
Sri Lanka lives to fight another day and knock out Afghanistan from the #T20WorldCup semi-final.#AFGvSL | 📝:… https://t.co/Vr8t8yzfUA
— T20 World Cup (@T20WorldCup) 1667287627000
The wicketkeeper batter danced and hit a glorious forehand Kasun Rajitha to record the first innings maximum.
The Afghans then hit three more fours and a six to collect 42 from the first six overs.
However, right after the power play, Kumara made the Sri Lankans’ first breakthrough.
Gurbaz seemed to be going big but there was just enough movement as the ball crossed the gap between the bat and the pad to crash into the stumps.
The spinners were then able to slow down proceedings after the wicket but Usman Ghani (27) hit Kumara for a long six.
Seeking to up the ante, Ghani again tried to launch in the 11th against Hasaranga, who was brought back into the attack.
However, the Afghan was made by a googly who had a rebound touch on it and skipper Dasun Shanaka pocketed it half wicket deep.
Ibrahim Zadran (22) became Kumara’s second victim in the 13th.
With wickets in hand, 13-year-old Mohammad Nabi sent a slower one into extra cover. But the skipper couldn’t stay in the middle for long as Afghanistan failed to shoot in the deathmatch, losing five wickets for 40 runs from the last 30 balls.
Sri Lanka were once guilty of being sloppy on the pitch.