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 Williams Lake to Mill Bay.

For scale
As the crow flies400 km
Biking whole way727 km Β· 48 h 47 m
By car672 km Β· 8 h 40 m

We found eight 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
Halfway across the province, no car required.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Pacific Central Station (Vancouver)301 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌Wilson's Transportation (BC Connector)BC Ferries Connector β€” Vancouver / VictoriaPacific Central Station (Vancouver) β†’Douglas St at Pandora Ave (Victoria)103 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.
🚲Travel the short hop from Douglas St at Pandora Ave (Victoria) to Legislature Exch (Belleville St) Bay G (Victoria), about 1.3 km. If pedalling it doesn't appeal, Bluebird Cabs, Sidney Taxi might help.
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 99 SVX Shawnigan Lake - Victoria Express (doesn't run every day)Legislature Exch (Belleville St) Bay G (Victoria) β†’Deloume Park & Ride (Mill Bay)36 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option two · seven legs⚠ doesn't run every day — check the schedule
A beautiful ferry ride with transit on both sides.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Pacific Central Station (Vancouver)301 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚝SkyTrainTransLinkPacific Central Station (Vancouver) β†’Bridgeport (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚎TransLink620 Bridgeport Station / Tsawwassen FerryBridgeport (Richmond) β†’Tsawwassen (Delta)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.
⛴️BC FerriesTsawwassen – Swartz BayTsawwassen (Delta) β†’Swartz Bay (North Saanich)41 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Swartz Bay (North Saanich) β†’Douglas St at Pandora Ave (Victoria)29 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲Travel the short hop from Douglas St at Pandora Ave (Victoria) to Legislature Exch (Belleville St) Bay G (Victoria), about 1.3 km.
🚎BC Transit66 CVX Cowichan - Victoria ExpressLegislature Exch (Belleville St) Bay G (Victoria) β†’Deloume Park & Ride (Mill Bay)36 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option three · six legs⚠ doesn't run every day — check the schedule
Four ways to travel, one destination.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Pacific Central Station (Vancouver)301 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚝SkyTrainTransLinkPacific Central Station (Vancouver) β†’Bridgeport (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚎TransLink620 Bridgeport Station / Tsawwassen FerryBridgeport (Richmond) β†’Tsawwassen (Delta)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.
⛴️BC FerriesTsawwassen – Swartz BayTsawwassen (Delta) β†’Swartz Bay (North Saanich)41 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚲Travel the short hop from Swartz Bay (North Saanich) to Brentwood Bay, about 13 km.
⛴️BC FerriesBrentwood Bay – Mill BayBrentwood Bay β†’Deloume Park & Ride (Mill Bay)12 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Daily, with fewer sailings on Sundays.
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option four · six legs⚠ doesn't run every day — check the schedule
A few connections, but each one moves you closer.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Pacific Central Station (Vancouver)301 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚝SkyTrainTransLinkPacific Central Station (Vancouver) β†’Vancouver Canada PlaceRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Vancouver Canada Place to CXH (Vancouver), about 0.8 km. If pedalling it doesn't appeal, Black Top Cabs, Maclure'S Cabs might help.
⛴️HulloHullo (Nanaimo – Vancouver)CXH (Vancouver) β†’Hullo Nanaimo Terminal (Port Way)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 Hullo Nanaimo Terminal (Port Way) to Bay D at Downtown Nanaimo Exch, about 1.4 km. If pedalling it doesn't appeal, A.C. Taxi, Yellow Cab Nanaimo might help.
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressBay D at Downtown Nanaimo Exch β†’Duncan46 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚎BC Transit66 CVX Cowichan - Victoria Expressor the 8 Mill Bay via Telegraph Rd/Duncan via Shawnigan LkDuncan β†’Deloume Park & Ride (Mill Bay)17 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Show four moreShow fewer
Option five · six legs⚠ doesn't run every day — check the schedule
The same idea as Option four, on different routes.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Surrey (Guildford Rec Centre)277 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚲Travel the short hop from Surrey (Guildford Rec Centre) to Surrey Central, about 3.4 km. If pedalling it doesn't appeal, Aldergrove-Langley Taxi Ltd., Green Cab might help.
🚝SkyTrainTransLinkSurrey Central β†’Vancouver Canada PlaceRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Vancouver Canada Place to CXH (Vancouver), about 0.8 km.
⛴️HulloHullo (Nanaimo – Vancouver)CXH (Vancouver) β†’Hullo Nanaimo Terminal (Port Way)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 Hullo Nanaimo Terminal (Port Way) to Bay D at Downtown Nanaimo Exch, about 1.4 km.
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressBay D at Downtown Nanaimo Exch β†’Duncan46 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚎BC Transit9 Mill Bay via Shawnigan Lk/Duncan via Telegraph RdDuncan β†’Deloume Park & Ride (Mill Bay)17 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option six · seven legs⚠ doesn't run every day — check the schedule
The same idea as Option two, on different routes.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Surrey (Guildford Rec Centre)277 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚲Travel the short hop from Surrey (Guildford Rec Centre) to Surrey Central, about 3.4 km.
🚝SkyTrainTransLinkSurrey Central β†’Bridgeport (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚎TransLink620 Bridgeport Station / Tsawwassen FerryBridgeport (Richmond) β†’Tsawwassen (Delta)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.
⛴️BC FerriesTsawwassen – Swartz BayTsawwassen (Delta) β†’Swartz Bay (North Saanich)41 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Swartz Bay (North Saanich) β†’Douglas St at Pandora Ave (Victoria)29 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲Travel the short hop from Douglas St at Pandora Ave (Victoria) to Douglas & Finlayson - Mayfair (Victoria), about 1.9 km.
🚎BC Transit99 SVX Shawnigan Lake - Victoria ExpressDouglas & Finlayson - Mayfair (Victoria) β†’Deloume Park & Ride (Mill Bay)34 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option seven · seven legs⚠ doesn't run every day — check the schedule
Another way: the same idea as Option two, on different routes.
CarrierRideYour bike
🚌EbusKamloops – Prince GeorgeWilliams Lake β†’Kamloops253 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.
🚌EbusVancouver – Kamloopsor Rider Express (Vancouver – Calgary (Hwy 1))Kamloops β†’Pacific Central Station (Vancouver)301 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚝SkyTrainTransLinkPacific Central Station (Vancouver) β†’Bridgeport (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚎TransLink620 Bridgeport Station / Tsawwassen FerryBridgeport (Richmond) β†’Tsawwassen (Delta)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.
⛴️BC FerriesTsawwassen – Swartz BayTsawwassen (Delta) β†’Swartz Bay (North Saanich)41 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚲Travel the short hop from Swartz Bay (North Saanich) to Brentwood Bay, about 13 km.
🚎BC Transit75 Saanichton / Royal Oak / DowntownBrentwood Bay β†’Legislature Exch (Belleville St) Bay G (Victoria)20 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚎BC Transit66 CVX Cowichan - Victoria ExpressLegislature Exch (Belleville St) Bay G (Victoria) β†’Deloume Park & Ride (Mill Bay)36 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Option eight · four legs✈ the splurge
Two flights, a SkyTrain, and a city bus.
CarrierRideYour bike
🚲First, get from Central Williams Lake to YWL (Williams Lake), about 8.4 km. Ride it, or take a local bus or taxi.
✈️Pacific Coastal AirlinesVancouver – Williams LakeYWL (Williams Lake) β†’Vancouver Airport (YVR) (Richmond)342 kmRides in the hold β€” small aircraft, limited spaceAbout $105 per directionNo e-bikes
🚝SkyTrainTransLinkVancouver Airport (YVR) (Richmond) β†’Vancouver Canada PlaceRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Vancouver Canada Place to CXH (Vancouver), about 0.8 km.
πŸ›©οΈHarbour AirVancouver Harbour – Victoria HarbourCXH (Vancouver) β†’Victoria Belleville Terminal98 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 Victoria Belleville Terminal to Legislature Exch (Belleville St) Bay G (Victoria), about 0.7 km.
🚎BC Transit66 CVX Cowichan - Victoria ExpressLegislature Exch (Belleville St) Bay G (Victoria) β†’Deloume Park & Ride (Mill Bay)36 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
🚲You arrive at Deloume Park & Ride (Mill Bay).
Route facts last checked October 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: Mill Bay to Williams Lake (best: bus)

Connections from Williams Lake: 100 Mile House (best: bus) · Port Moody (best: bus + SkyTrain) · Osoyoos (best: bus) · Whitehorse, YT (best: bus + plane)

Connections from Mill Bay: Galiano Island (best: bus + ferry) · Seattle, WA (best: bus + ferry) · Rossland (best: bus) · Whitehorse, YT (best: bus + ferry + SkyTrain)

Check out BC Bike Stops in Williams Lake and Mill Bay