Chasing 148, Karachi were reduced to 22 for 2 inside four overs by right-arm seamer Aamer Yamin. But an 87-run third-wicket partnership between Shafiq and Sarfraz put Karachi on course.
Sadaif Mehdi had Shafiq caught four short of his fifth T20 fifty, but Mohammad Waqas struck three sixes during his unbeaten 13-ball 24 to guide Karachi home.
Multan's innings had played out in similar fashion, as they began by losing their openers inside four overs with 25 runs on the board. A 69-run association between Gulraiz Sadaf (40) and Yamin (47) revived their innings, but after Yamin's wicket in the 14th over, Multan lost five wickets for 27 runs. Multan managed to score 22 runs in the final over of their innings, helping them to 147 for 9.
Umar Akmal's unbeaten 85 led Lahore Lions to a 45-run win over Faisalabad Wolves. Despite wickets falling around him regularly, Umar Akmal steered Lions to 153 for 8 after they had chosen to bat. He faced 60 deliveries and hit eight fours and four sixes. The next highest score for the side was Kamran Akmal's 25. Lions had been reduced to 95 for 6 in the 15th over, but a partnership of 39 between Umar Akmal and Mustafa Iqbal revived the innings.
Wolves never got going in the chase, losing half the side by the ninth over with only 45 on the board. Only three batsmen got to double figures, Ali Shan's unbeaten 28 being the highest of those scores. Mohammad Hafeez and Imran Ali picked up two wickets each as Wolves were bowled out for 108 in 19 overs.