This question already has an answer here:
I am a foreign student with a Canadian Resident Permit. I intend to travel back to my country for a holiday and will come back to Canada to pursue my study. My flight to my country (Zambia) is through Seattle in the USA where I need to change plane. Do I need a US visa to transit even though I am not getting out of the airport?