Canada finally has a way to stop telemarketing calls. You can add your number to the National Do Not Call List. Then, after 31 days, if a telemarketer does call the CRTC may impose a penalty of up to $1,500 per violation for individuals and up to $15,000 per violation for corporations.
Certain organizations such as charities and political parties are exempt from the National Do Not Call List. If you want to stop those calls, there is another service called iOptOut. It's not run by the government but it seems legit.