I have had good and bad experiences with PIA but never great. But in the end, its one of the cheapest tickets out there and shortest travel time. Otherwise i would recommend Eithad, Emirates or any other stop-over flights via europe.
Eithad & Emirates will have a stop over at their respective cities for 4-8 hours (depending on flight)
Total travel time will be 20-26+ hours. Same goes for europe stopovers.
PIA will have the shortest trip of direct flight of 16-18 hours IF you fly on the direct flight day. Depends where you are going, Lahore, Islamabad or Karachi.
PIA has 3 flights / week. If you are in Toronto, Karachi direct flights are Fridays from T.O. and Sundays from Karachi (return). Other two days are direct to either Lahore or Islamabad.
Issues i have with PIA: Over booking (sometimes), Political issues regarding their finances, Great service going to Karachi but Average/poor service on the way back. Some Entertainment units don't work or have issues or work only a certain way.
Question you have to ask yourself, Are you willing pay for the good stuff or bare it for a cheaper ticket.
Next time i fly, it will be with Emirates or Eithad. There was strike that was looming PIA in Dawn paper 6 days before my departure, which ruined my whole day when i heard it as I started making back up plans. Luckily it was just all talk -- political. My flight was on time and direct to Toronto.
PIA offers 16 hour direct but if there is a stop over in lahore, islamabad or technical difficulties, it can become a 20 hour flight and then you wonder why i didn't pay the extra for emirates for the same time... but, i get to keep the $600 savings in my pocket for my travel shopping and gifts. I can wait extra 4-6 hours. Just sleep whole day when i get to the nearest bed
Do what suits you best Mike.
Cheers