Yes, you need a visit to transit in Canada: www.cic.gc.ca/english/visit/apply-how.asp
You will also go through US immigration and customs clearance at Toronto airport and fly to Detroit as a domestic passenger. If you've not booked a ticket yet, please ensure that when you do so you allow enough time for the necessary processes between flights.
>> If you've not booked a ticket yet, please ensure that when you do so you allow enough time for the necessary processes between flights.<<
If you've not booked a ticket yet, then reconsider your route. This is a situation where if you flew directly to the US you'd save yourself the hassle of having to get an additional visa, just for transit. Though if you did fly directly to the US you'd still need to allow plenty of time (at least 3 hours) to clear US formalities at the gateway city.
-:- Message from TripAdvisor staff -:-
This topic has been closed to new posts due to inactivity. We hope you'll join the conversation by posting to an open topic or starting a new one.
To review the TripAdvisor Forums Posting Guidelines, please follow this link: http://www.tripadvisor.com/pages/forums_posting_guidelines.html
We remove posts that do not follow our posting guidelines, and we reserve the right to remove any post for any reason.