Der Halfway River hat seinen Ursprung im Robb Lake in den Muskwa Ranges, einem Teilgebirge der nördlichen Kanadischen Rocky Mountains.
Er durchfließt das Gebirge in östlicher Richtung. Nach Verlassen des Berglands wendet sich der Halfway River nach Südsüdost. Er nimmt die rechten Nebenflüsse Cypress Creek, Chowade River, Horseshoe Creek, Blue Grave Creek und Graham River auf. Anschließend passiert er das Reservat der Halfway River First Nation. Im Unterlauf mündet der Cameron River linksseitig in den Fluss. Schließlich mündet er bei Attachie, auf halber Strecke zwischen Hudson’s Hope und Fort St. John, in den Peace River. Der British Columbia Highway 29 überquert den Fluss kurz vor der Mündung. Der Halfway River hat eine Länge von etwa 220 km. Sein Einzugsgebiet umfasst 9400 km². Der mittlere Abfluss beträgt 75 m³/s.