Khyber Pakhtunkhwa won the toss and chose to bat in the match.
Taking guard, Khyber Pakhtunkhwa managed 262/6 in their 50 overs with three of its batsmen scoring half century.
Opener Fakhar Zaman was the top scorer for the team as he made 64 runs from 71 balls with six boundaries and a six to his name whereas his partner Ahmed Shehzad contributed 57 runs from 52 deliveries after hitting six boundaries and three maximums.
Zohaib Khan remained unbeaten after scoring 51 off 53 balls with three boundaries and a six to his name.
Rameez Aziz and Bismillah Khan made 35 and 33 runs respectively for the side.
Punjab bowlers Aamer Yamin and Zulfiqar Babar grabbed two wickets each while Ehsan Adil dismissed one batsman each.
Punjab side, chasing 263 runs to win from 50 overs, fell two runs short from victory as they could score 260/7.
Salman Butt made 77 runs from 114 runs after striking eight boundaries.
Asad Shafiq and Mohammad Rizwan both fell three runs short of their half century as the two batsmen were dismissed after making 47 runs for the team.
Skipper Shoaib Malik contributed 41 runs for his side.
Rahat Ali was the pick of the bowlers as he took four wickets for Khyber Pakhtunkhwa side while Zia-ul-Haq and Zohaib Khan grabbed a wicket each.
Rahat Ali was name the Player of the Match for his performance with the ball.
Khyber Pakhtunkhwa (team): Ahmed Shehzad, Fakhar Zaman, Younis Khan (captain), Rameez Aziz, Zohaib Khan, Bismillah Khan, Fahim Ashraf, Yasir Shah, Zia-ul-Haq, Hayatullah and Rahat Ali.
Punjab (team): Salman Butt, Saad Nasim, Asad Shafiq, Mohammad Rizwan, Akbar-ur-Rehman, Shoaib Malik (squad), Saif Badar, Aamer Yamin, Amad Butt, Zulfiqar Babar and Ehsan Adil.