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.
Jason Roy earns maiden call-up for Ireland Test
Babar Azam joins Somerset for Vitality Blast
10 best stats from 2019 Cricket World Cup
Dharmasena admits his 'error of judgment' in World Cup final
Lendl Simmons and Tymal Mills join Peshawar Zalmi
Dean Jones tears up while defending Asif Ali
Glamorgan eyes Pakistan’s Fakhar Zaman for T20 Blast
Most successful bowler in the history of PSL
Shane Watson continues his prime form in PSL
PSL changed my life: Ahsan Ali