The sides will meet again on Friday to decide the series.
The hosts, beaten 2-0 in the recent T20 series, were chasing a target of 228 to win but were bowled out for 198
Afghanistan had already taken an unassailable 2-0 lead in the three-match series against Ireland
Hazratullah Zazai top scored with 82 from just 54 balls and was ably supported by captain Asghar Afghan's 37.
The tourists posted 160-7 batting first after rain had reduced the match to 18 overs a side.
Overnight rain and bad light dominate as fourth day's play gets called off
Amir, Irfan leave for Bangladesh Premier League
Fear of security concerns has gone: Karunaratne
Hasan Ali pulls his magic celebration at Bridal Couture Week
Starc blazing spell, Smith blinder help Australia dominate proceedings
Shaheen praises Waqar's coaching methods
Bhuvneshwar Kumar ruled out of West Indies ODIs, Shardul Thakur named replacement
Ali Tareen extols 'Pindi boy' Rohail Nazir
PSL Squads 2020 - PSL 5 Teams and Players List
England leave out Joe Root for South Africa T20Is