I have read the posts of several people who searches different traveling options from Pakistan to Canada. First, let me tell you an important thing. Don't consider Qatar Airways as your choice because it goes to Montreal and Montreal is in the province of Quebec. Those applicants, who did not mention Quebec as their destination cannot land on any airport over there without a permission/permit kind of thing from the embassy so better don't waste your time in asking Qatar Airways rates even if its the cheapest.
People from Pakistan have the following options to travel to Canada:
1- PIA (Goes to Toronto directly from Karachi, Lahore & Islamabad)
2- Emirates (Change in Dubai)
3- Turkish Airlines (Change in Istanbul)
4- Etihad Airlines (Change in Abu Dhabi)
5- Gulf Air (Pakistan To Bahrain, Change in Bahrain, then Bahrain To London and from London to Canada, they have an agreement with Air Canada).
6- From 28th October 2013, Saudi Arabian Airlines is also starting a flight to Toronto. It will initiate from Riyadh then goes to Jeddah and then direct to Toronto so one can catch it from Jeddah and i guess as they are starting Toronto for the first time, the fares will remain a bit lower in the initial months.
Usually, people who travels frequently to and from Canada prefers Turkish Airlines because they have excellent service and low rates as compare to Emirates or Etihad. Briefly, from Pakistan, you have 6 choices in total one is direct (i.e. PIA) whereas the other 5 are indirect.