BC Cycle Tourism Society

To and Fro: moving your bike around British Columbia

My bike and I are in and we’d like to be in .
We show what transit connections accept bikes. Check with the operator for prices, schedules, and reservations.
Same place twice. You’re already there, so enjoy the ride.

Good news: buses, trains and flights can carry you and your bike from Salmo to Terrace.

For scale
As the crow flies975 km
Biking whole wayno route found
By car1,588 km · 17 h 31 m

We found seven ways to get you there.

🎒 Riding a coach? Most BC coach operators want your bike bagged or boxed. Our field note walks through packing it, including an inexpensive packable bike bag we like: How to bike-and-bus in BC ›
Note: Most carriers carry only a handful of bikes, and summer weekends fill up fast. Reserve where you can. Where you can't, go early or have a backup plan.
Option one · four legs⚠ doesn't run every day — check the schedule
Grab a window seat, the scenery's included.
CarrierRideYour bike
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Salmo →Calgary AB482 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚌EbusVancouver – Calgary (Hwy 1)or Rider Express (Vancouver – Calgary (Hwy 1))Calgary AB →Kamloops480 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs the same Highway 1 corridor as Rider Express, so compare schedules and fares.
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚆VIA RailSkeena (Prince Rupert – Prince George – Jasper)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)477 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Option two · four legs⚠ doesn't run every day — check the schedule
Same as Option one, but a coach bus instead of the train.
CarrierRideYour bike
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Salmo →Calgary AB482 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚌EbusVancouver – Calgary (Hwy 1)or Rider Express (Vancouver – Calgary (Hwy 1))Calgary AB →Kamloops480 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs the same Highway 1 corridor as Rider Express, so compare schedules and fares.
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚌BC Bus North (Tahltan NST Busing Ltd.)Prince George – Prince Rupert (Hwy 16 West)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)494 kmRides in the hold — boxed, bagged, or wrappedReserve bike spot
Twice a week: Monday and Thursday westbound, Tuesday and Friday eastbound.
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Option three · five legs⚠ doesn't run every day — check the schedule
Four ways to travel, one destination.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚌Mountain Man Mike'sKaslo – Vancouver1680 Hwy 3A/6 (Nelson) →New Westminster495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚝SkyTrainTransLinkNew Westminster →Pacific Central Station (Vancouver)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚆VIA RailThe Canadian (Vancouver – Kamloops North – Jasper)Pacific Central Station (Vancouver) →Jasper AB541 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Two departures a week in season; bikes can be checked on and off at Vancouver and Jasper only.
🚆VIA RailSkeena (Prince Rupert – Prince George – Jasper)Jasper AB →Lakelse at Skeena Mall (Terrace)808 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Option four · five legs⚠ doesn't run every day — check the schedule
Option one, plus a city bus at the start.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚌Mountain Man Mike'sKaslo – Vancouver1680 Hwy 3A/6 (Nelson) →Hope374 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary) or Rider Express (Vancouver – Calgary (Hwy 1))Hope →Kamloops164 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚆VIA RailSkeena (Prince Rupert – Prince George – Jasper)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)477 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Show five moreShow fewer
Option five · five legs⚠ doesn't run every day — check the schedule
Option two, plus a city bus at the start.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚌Mountain Man Mike'sKaslo – Vancouver1680 Hwy 3A/6 (Nelson) →Hope374 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary) or Rider Express (Vancouver – Calgary (Hwy 1))Hope →Kamloops164 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚌BC Bus North (Tahltan NST Busing Ltd.)Prince George – Prince Rupert (Hwy 16 West)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)494 kmRides in the hold — boxed, bagged, or wrappedReserve bike spot
Twice a week: Monday and Thursday westbound, Tuesday and Friday eastbound.
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Option six · five legs⚠ doesn't run every day — check the schedule
Same as Option three, but a coach bus instead of the city bus.
CarrierRideYour bike
🚌Mountain Man Mike'sKaslo – Calgaryor Mountain Man Mike's (Kaslo – Cranbrook – Calgary (weekly)) (doesn't run every day)Salmo →1680 Hwy 3A/6 (Nelson)33 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week, continuing east into Alberta.
🚌Mountain Man Mike'sKaslo – Vancouver1680 Hwy 3A/6 (Nelson) →New Westminster495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚝SkyTrainTransLinkNew Westminster →Pacific Central Station (Vancouver)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚆VIA RailThe Canadian (Vancouver – Kamloops North – Jasper)Pacific Central Station (Vancouver) →Jasper AB541 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Two departures a week in season; bikes can be checked on and off at Vancouver and Jasper only.
🚆VIA RailSkeena (Prince Rupert – Prince George – Jasper)Jasper AB →Lakelse at Skeena Mall (Terrace)808 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Not an option · five legs🚫 not possible with a bike⚠ doesn't run every day — check the schedule
A city bus, three coach buses, and a train.
🚫  This chain exists, but Silver City Stagelines does not carry bikes, so it cannot work with yours. We show it so you can see where the connection breaks.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚌Silver City StagelinesTrail – Kelowna (Hwy 3/33)1680 Hwy 3A/6 (Nelson) →Kelowna (Orchard Park Mall)244 kmDoes not carry bikes
🚌EbusKamloops – Kelowna (via Salmon Arm)Kelowna (Orchard Park Mall) →Kamloops188 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚆VIA RailSkeena (Prince Rupert – Prince George – Jasper)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)477 kmChecked baggage — staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK — battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Not an option · five legs🚫 not possible with a bike⚠ doesn't run every day — check the schedule
A city bus and four coach buses.
🚫  This chain exists, but Silver City Stagelines does not carry bikes, so it cannot work with yours. We show it so you can see where the connection breaks.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚌Silver City StagelinesTrail – Kelowna (Hwy 3/33)1680 Hwy 3A/6 (Nelson) →Kelowna (Orchard Park Mall)244 kmDoes not carry bikes
🚌EbusKamloops – Kelowna (via Salmon Arm)Kelowna (Orchard Park Mall) →Kamloops188 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops →Downtown Exch Bay B (Prince George)456 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚌BC Bus North (Tahltan NST Busing Ltd.)Prince George – Prince Rupert (Hwy 16 West)Downtown Exch Bay B (Prince George) →Lakelse at Skeena Mall (Terrace)494 kmRides in the hold — boxed, bagged, or wrappedReserve bike spot
Twice a week: Monday and Thursday westbound, Tuesday and Friday eastbound.
🚲You arrive at Lakelse at Skeena Mall (Terrace).
Option 9 · four legs✈ the splurge⚠ doesn't run every day — check the schedule
The scenic splurge: hop a flight.
CarrierRideYour bike
🚎BC Transit72 Salmo-Nelson via YmirSalmo →1680 Hwy 3A/6 (Nelson)33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit99 Kootenay Connector1680 Hwy 3A/6 (Nelson) →Hwy 3A at Ootischenia Rd (Brilliant)31 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Hwy 3A at Ootischenia Rd (Brilliant) to Castlegar, about 2.8 km.
✈️Air CanadaVancouver (YVR) – Castlegar (YCG)Castlegar →Vancouver Airport (YVR) (Richmond)402 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
✈️Air CanadaVancouver (YVR) – Terrace (YXT)Vancouver Airport (YVR) (Richmond) →YXT (Terrace)695 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
🚲At the far end, Central Terrace is about 5.5 km from YXT (Terrace). Ride it, or take a local bus or taxi.
Route facts last checked July 2026. We check that every leg here carries bikes, but policies and seasons change. Check times and book with the operator. Something wrong or out of date? Tell us and we'll fix it.
Explore more

Heading back: Terrace to Salmo (best: train + bus)

Connections from Salmo: Castlegar (best: bus) · Kamloops (best: bus) · Pender Island (best: bus + SkyTrain + ferry) · Haida Gwaii (best: bus + train + ferry)

Connections from Terrace: Smithers (best: train) · Clearwater (best: train + bus) · Harrison Hot Springs (best: train + SkyTrain + bus) · Fernie (best: train + bus)

Check out BC Bike Stops in Salmo and Terrace