US and Canadian income tax are similar in objectives but different in all details. The similarity in objectives is because both governments want citizens and residents to do the same things, that is work hard, earn a paycheck, support your kids and send them to school, and save for your old age.
All of the details are different because the Canadian tax laws are prepared by the finance department. The Finance Minister is not concerned with local effects so he takes a broad view. The US tax laws are prepared by Congress, with about 535 different legislators taking part, with each one hoping to reward his voters and his campaign contributors. If not he wants to at least tell them that he introduced a legislative amendment that would have helped them if it passed. This is why the US tax code is about 80,000 pages and the Canadian is about 700 pages.
The US taxes its citizens no matter where they live in the world. I believe that Eritrea is the only other country that does this. When a Canadian citizen leaves Canada he pays taxes on all the previously-untaxed capital gains achieved during his stay and has no further tax reporting liability until he re-enters Canada unless he has Canadian-source income.
The US government goes to great effort to keep track of any financial transactions performed out of the country by its citizens. It has required citizens who have foreign financial accounts with a maximum combined value of $10,000 or more to file form TD F 90-22.1 for more than 30 years. In 2005 they introduced form 8891 to track the value of Canadian Registered Retirement Savings Plans. In recent years they have introduced form 8938 to ask for more information about foreign financial accounts. The most intrusive of all takes effect January 1 of 2014. It requires financial institutions that are outside the US to report all accounts owned by US citizens to the IRS. Most banks have responded by closing all accounts owned by US citizens. This is utter nonsense. The US has as much right to order Zimbabwean banks to obey US laws as the Zimbabwean government has to order US banks to obey Zimbabwean law. A sane person would expect legislators, most of whom are lawyers, to remember Law 101 and the first lesson, which should have been jurisdiction.
There is a tax treaty which is intended to make clear rules about cross-border income issues so that the taxpayer will pay tax once and only once on each income item. Normally he or she takes a credit on the second return for the tax paid on the first return.
When a person has to file taxes in both countries it is nearly always advantageous to have them prepared together by the same person.