Chasing a target of 198 runs, the Kings were restricted to 173-8 in 20 overs.
Despite losing Adam Rossington, who made 15 runs in eight balls, the Kings scored 55 runs in the first powerplay.
However, Azmatullah Omarzai provided a crucial breakthrough in the seventh over of the match after Tayyab Tahir (6) — who scored a fifty in the previous match — was caught behind the stumps.
With Karachi looking to up the ante, two wickets fell in quick succession to give Peshawar an edge over Karachi. Irfan Khan (4) and Shoaib Malik (1) went back to the hut without a significant contribution.
Opener Matthew Wade was cleaned up by Mujeeb Ur Rahman after scoring 53 runs in 41 balls.
After Wade’s departure, the Kings lost their way and kept losing wickets at regular intervals.
Skipper Imad Wasim scored unbeaten 57 runs in 30 balls but was unable to get his team over the line.
Aamer Jamal and Omarzai claimed three wickets each, meanwhile, Mujeeb bagged two scalps.
Earlier, Peshawar Zalmi had set Karachi Kings a target of 198 runs during the crucial clash.
Zalmi scored 197-5 in their allotted 20 overs despite being on the ropes in the early part of the innings.
Pacer Mohammad Amir gave the Kings a perfect start after dismissing Babar Azam and Mohammad Haris in the first over of the innings. Both batters were dismissed for a duck.
Amir claimed his third wicket of the match when Saim Ayub (1) was caught at deep square leg after a loosely played flick shot.
However, youngster Haseebullah Khan, who was playing his first match, scored an impressive fifty to get his team back on track. The left-hander scored 50 runs in 29 balls, which included four fours and three sixes, before being dismissed by Tabraiz Shamsi.
Meanwhile, Karachi’s hopes of restricting Peshawar to a low total were thwarted by Rovman Powell, who smacked the bowlers to all parts of the ground. His explosive 34-ball 64 included six fours and four sixes.
Tom Kohler-Cadmore also chipped in with a solid contribution of 56 runs in 45 balls. His innings included five fours and three sixes.
Amir was the pick of the bowlers for Karachi with figures of 4-26 in four overs.
It must be noted that Karachi Kings had won the toss and decided to bowl first against Peshawar Zalmi.
After the defeat, the Kings are placed in fifth position on the points table with four points after seven matches.
Meanwhile, Zalmi are in fourth place with six points after as many matches.