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, ferries, trains and flights can carry you and your bike from Mill Bay to Salmo.

For scale
As the crow flies463 km
Biking whole way759 km · 50 h 41 m
By car768 km · 9 h 45 m

We found 9 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 · six legs⚠ doesn't run every day — check the schedule
Grab a window seat, the scenery's included.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 8 Mill Bay via Telegraph Rd/Duncan via Shawnigan Lk or the 9 Mill Bay via Shawnigan Lk/Duncan via Telegraph RdDeloume Park & Ride (Mill Bay) →Duncan17 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Hullo Nanaimo Terminal (Port Way), about 1.4 km. If pedalling it doesn't appeal, A.C. Taxi, Yellow Cab Nanaimo might help.
⛴️HulloHullo (Nanaimo – Vancouver)Hullo Nanaimo Terminal (Port Way) →CXH (Vancouver)61 kmBook online ahead — 6 bike spots per sailing, 1 per guest$19.99 one way — $25 in personNo e-bikes — no trailers, 80 in / 50 lb max
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km. If pedalling it doesn't appeal, Black Top Cabs, Maclure'S Cabs might help.
🚝SkyTrainTransLinkVancouver Canada Place →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option two · six legs⚠ doesn't run every day — check the schedule
The same idea as Option one, on different routes.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan-Victoria ExpressDeloume Park & Ride (Mill Bay) →Duncan17 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Hullo Nanaimo Terminal (Port Way), about 1.4 km.
⛴️HulloHullo (Nanaimo – Vancouver)Hullo Nanaimo Terminal (Port Way) →CXH (Vancouver)61 kmBook online ahead — 6 bike spots per sailing, 1 per guest$19.99 one way — $25 in personNo e-bikes — no trailers, 80 in / 50 lb max
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km.
🚝SkyTrainTransLinkVancouver Canada Place →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option three · six legs⚠ doesn't run every day — check the schedule
The coach takes care of the long stretch.
CarrierRideYour bike
⛴️BC FerriesBrentwood Bay – Mill BayDeloume Park & Ride (Mill Bay) →Brentwood Bay12 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
Daily, with fewer sailings on Sundays.
🚲Travel the short hop from Brentwood Bay to Swartz Bay (North Saanich), about 13 km.
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option four · six legs⚠ doesn't run every day — check the schedule
Halfway across the province, no car required.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria ExpressDeloume Park & Ride (Mill Bay) →Legislature Exch (Belleville St) Bay G (Victoria)36 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Legislature Exch (Belleville St) Bay G (Victoria) to Douglas St at Pandora Ave (Victoria), about 1.3 km. If pedalling it doesn't appeal, Bluebird Cabs, Sidney Taxi might help.
🚌Wilson's Transportation (BC Connector)BC Ferries Connector — Vancouver / VictoriaDouglas St at Pandora Ave (Victoria) →Tsawwassen (Delta)70 kmRides in the hold — bagged or boxed$42 per bike — 50 lb maxReserve bike spot — recommended
⛴️ Downtown to downtown via the Tsawwassen–Swartz Bay ferry crossing.
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Show five moreShow fewer
Option five · seven legs⚠ doesn't run every day — check the schedule
A long haul, but it all connects.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan-Victoria ExpressDeloume Park & Ride (Mill Bay) →Douglas St at Pandora Ave (Victoria)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Douglas St at Pandora Ave (Victoria) →Swartz Bay (North Saanich)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option six · seven legs⚠ doesn't run every day — check the schedule
The same idea as Option five, on different routes.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 99 SVX Shawnigan Lake - Victoria Express (doesn't run every day)Deloume Park & Ride (Mill Bay) →Legislature Exch (Belleville St) Bay G (Victoria)36 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Legislature Exch (Belleville St) Bay G (Victoria) to Douglas St at Pandora Ave (Victoria), about 1.3 km.
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Douglas St at Pandora Ave (Victoria) →Swartz Bay (North Saanich)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option seven · seven legs⚠ doesn't run every day — check the schedule
Nothing direct, but it strings together.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 8 Mill Bay via Telegraph Rd/Duncan via Shawnigan Lk or the 9 Mill Bay via Shawnigan Lk/Duncan via Telegraph RdDeloume Park & Ride (Mill Bay) →Duncan17 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Downtown Nanaimo Exchange, about 0.5 km.
🚎BC Transit20/20A Hammond Bay / Doveror the 25 Ferry ShuttleDowntown Nanaimo Exchange →Departure Bay (Nanaimo)3.3 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesHorseshoe Bay – Departure BayDeparture Bay (Nanaimo) →Horseshoe Bay53 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink257 Horseshoe Bay ExpressHorseshoe Bay →Downtown Vancouver (Dunsmuir at Cambie)19 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverDowntown Vancouver (Dunsmuir at Cambie) →1680 Hwy 3A/6 (Nelson)511 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
Option eight · six legs⚠ doesn't run every day — check the schedule
Same as Option one, but a coach bus instead of the city bus.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 8 Mill Bay via Telegraph Rd/Duncan via Shawnigan Lk or the 9 Mill Bay via Shawnigan Lk/Duncan via Telegraph RdDeloume Park & Ride (Mill Bay) →Duncan17 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Hullo Nanaimo Terminal (Port Way), about 1.4 km.
⛴️HulloHullo (Nanaimo – Vancouver)Hullo Nanaimo Terminal (Port Way) →CXH (Vancouver)61 kmBook online ahead — 6 bike spots per sailing, 1 per guest$19.99 one way — $25 in personNo e-bikes — no trailers, 80 in / 50 lb max
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km.
🚝SkyTrainTransLinkVancouver Canada Place →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌Mountain Man Mike'sKaslo – Calgaryor Mountain Man Mike's (Kaslo – Cranbrook – Calgary (weekly)) (doesn't run every day)1680 Hwy 3A/6 (Nelson) →Salmo33 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week, continuing east into Alberta.
🚲You arrive at Salmo.
Option 9 · six legs✈ the splurge⚠ doesn't run every day — check the schedule
A proper expedition.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria ExpressDeloume Park & Ride (Mill Bay) →Legislature Exch (Belleville St) Bay G (Victoria)36 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Legislature Exch (Belleville St) Bay G (Victoria) to Victoria Harbour, about 0.7 km.
🛩️Harbour AirVancouver Harbour – Victoria HarbourVictoria Harbour →CXH (Vancouver)98 kmFront wheel must come off$20 handling fee — bike weight counts toward your baggage allowanceNot on the Twin Otter — other floatplanes are fine; confirm when booking
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km.
🚝SkyTrainTransLinkVancouver Canada Place →Vancouver Airport (YVR) (Richmond)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
✈️Air CanadaVancouver (YVR) – Castlegar (YCG)Vancouver Airport (YVR) (Richmond) →Castlegar402 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
🚲Travel the short hop from Castlegar to Hwy 3A at Ootischenia Rd (Brilliant), about 2.8 km.
🚎BC Transit99 Kootenay ConnectorHwy 3A at Ootischenia Rd (Brilliant) →1680 Hwy 3A/6 (Nelson)31 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit72 Salmo-Nelson via Ymir1680 Hwy 3A/6 (Nelson) →Salmo33 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲You arrive at Salmo.
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: Salmo to Mill Bay (best: bus + SkyTrain + ferry)

Connections from Mill Bay: Galiano Island (best: bus + ferry) · Coquitlam (best: bus + ferry + SkyTrain) · Osoyoos (best: bus + ferry + SkyTrain) · Prince Rupert (best: bus + rental car + ferry)

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

Check out BC Bike Stops in Mill Bay and Salmo