Shaheen Afridi took five wickets as Pakistan fended off a Zimbabwe side who were almost propelled to a shock ODI victory by Brendan Taylor.
Pakistan landed a 26-run victory in the first game of a three-match ODI series, the first step for both teams on the road to the 2023 World Cup, inflicting on Zimbabwe their 500th international defeat.
The home side posted 281-8 before bowling out Zimbabwe for 255, but the visitors had been firmly in the hunt until wicketkeeper-batsman Taylor fell for a battling 112 to the penultimate ball of the 47th over. He had earlier taken three catches and played his part in a run out.
It was Shaheen who ended his stay on the way to figures of 5-49, while fellow left-arm paceman Wahab Riaz also claimed a priceless 4-41, wrapping up the win by bowling last man Blessing Muzarabani.
Babar Azam, in his first ODI as Pakistan captain, was able to celebrate a hard-fought success - a seventh in a row for the team.
Pakistan's innings was built on half-centuries from opener Imam-ul-Haq (58) and Haris Sohail (71), but wickets fell at such regular intervals that there was no defining partnership. Indeed, the opening pair of Imam and Abid Ali put on more than any other pair.
Imad Wasim clubbed a pair of late sixes late in the innings on his way to an unbeaten 34 from 26 balls, but Zimbabwe were still in the game.
Shaheen accounted for openers Brian Chari and Chamu Chibhabha, bowling both to leave Zimbabwe wobbling on 28-2 in reply, but Craig Ervine (41) and Taylor put on 71 for the third wicket, and it was game on when Taylor and Wesley Madhevere produced a century stand for the fifth.
Yet losing Madhevere (55) early in the 46th over was a major blow, with Wahab disrupting the established partnership and giving Pakistan the breakthrough they craved.
Taylor was next to go, top-edging to Wahab at mid-off, and the Zimbabwe lower order was blown away, along with the prospect of a tight finish.
It meant a success for Pakistan in their first ODI since October 2019, and in the first such match played at Rawalpindi since 2006.
Having lost 17 of their previous 18 ODIs in Pakistan, it was a largely predictable outcome for Zimbabwe, with the teams due back in action in the second match of this series on Sunday.