If you are a U.S. permanent resident, you don’t have to apply for a visa in order to visit Canada. Even if you hold a passport from a country whose citizens are required to present a visa to enter Canada, all you need is your green card or other evidence that can prove your U.S. permanent residence.
Below is an excerpt from the Canadian immigration authority’s website with regard to Visitor Visa Exemptions:
persons lawfully admitted to the United States for permanent residence who are in possession of their alien registration card (Green card) or can provide other evidence of permanent residence
If you are staying in the United States under a non-immigrant status, such as F-1, B-2 or H-1, you do need to obtain a visitor visa before travelling to Canada, if your country is on the list that requires visas. You may have heard of the “30-day rule (Automatic Revalidation),” but don’t confuse it with entering Canada because it is only referring to your return to the United States.
If you are already a U.S. citizen, you don’t need a visa to visit Canada or a long list of other countries. The Department of State publishes extensive country-specific information, including entry/exit requirements, for U.S. passport holders planning to travel abroad.