Elva ligger i sin helhet på det kanadiske skjold. Kildeområdet ligger i den østlig-sentrale delen av Alberta, og den renner herfra gjennom en rekke innsjøer i Saskatchewan (Churchill, Peter Pond, Île-à-la-Crosse). Den største sideelva, Beaver River, løper sammen med Churchill i Île-à-la-Crosse-sjøen. Fra Lac La Ronge i sør kommer Rapid River, med Nistowiakfallene – den høyeste fossen i Saskatchewan. Den munner ut i Churchill like nord for La Ronge i Saskatchewan. Etter elva krysser grensa til Manitoba møter den Reindeer River, og fortsetter deretter mot øst gjennom en rekke innsjøer (Highrock, Granville, Southern Indian og Gauer). Fra South Indian Lake blir 60 % av vannføringen i elva overført til produksjon av vannkraft i elva Nelson. Resten av elva munner ut i Hudsonbukta, ved byen Churchill.