Q:  As a U.S. citizen, must I have a passport in order to visit Canada?

A:  As of January 23, 2007: If you are travelling to Canada by air, a valid passport is necessary for return entry to the U.S. (see US State Department for requirements re air travel . )

A passport is presently NOT mandatory for travel by land (vehicle, train or boat) across the Canada/US border. 

However, you must carry proof of your citizenship.  Accepted proof of citizenship includes EITHER:-

>a birth certificate or certificate of citizenship or naturalization (original or cerftified copy), as well as a government issued photo ID such as driver's licence, 
OR
> a passport.  

If you are a permanent resident of the U.S., you should bring your Permanent Resident Card (i.e. green card) with you. 

For more information visit travel.state.gov/travel/tips/regional/regional_1170.html  (*see under VISAS AND TRAVEL DOCUMENTS heading halfway down this page);
or www.cbsa.gc.ca/general/border/faq-e.html 
or call U.S. Immigration at (313) 963-4408 / (313) 568-6020, or Citizenship & Immigration Canada Call Centre at 1-888-242-2100.