BC Ferries: Vancouver to Vancouver Island, the Sunshine Coast & Gulf Islands
BC Ferries from Tsawwassen and Horseshoe Bay to Nanaimo, the Sunshine Coast, Bowen Island and the Southern Gulf Islands: crossing times and sailings per day.
📋 Essential Pre-Departure Checklist
- ✓Tsawwassen for Nanaimo (Duke Point) and the Gulf Islands; Horseshoe Bay for the Sunshine Coast and Bowen Island
- ✓Gulf Islands sailings may stop at several islands: check for a non-stop
- ✓Salt Spring has two ferry terminals: Long Harbour (from Tsawwassen) and Fulford Harbour (from Swartz Bay)
Two Vancouver terminals
BC Ferries sails from two terminals near Vancouver. Tsawwassen, south of the city, serves Nanaimo’s Duke Point and the Southern Gulf Islands. Horseshoe Bay, north-west of the city, serves the Sunshine Coast (Langdale) and Bowen Island. All these routes carry vehicles and foot passengers.
To Nanaimo and the Sunshine Coast
Tsawwassen–Duke Point (Nanaimo) takes about 2 hours, with 8–10 non-stop sailings a day each way, roughly every 2½ hours from 5:15am to 10:45pm. Horseshoe Bay–Langdale on the Sunshine Coast takes about 40 minutes, with 8–10 sailings a day. Bowen Island is a 20-minute hop from Horseshoe Bay, about 16 times a day.
The Southern Gulf Islands
From Tsawwassen, Salt Spring Island (Long Harbour) is about 1 hour 25 minutes non-stop, or up to about 3 hours via other islands, with about 2 sailings a day Monday to Thursday and 3–4 on Fridays and weekends. Galiano is about 55 minutes non-stop. From the Victoria side, Swartz Bay–Fulford Harbour on Salt Spring takes about 35 minutes, 8 times a day. Gabriola Island is 25 minutes from Nanaimo Harbour.
BC Ferries: crossing times and sailings
From BC Ferries’ seasonal schedules (checked 29 September 2026). Schedules change by season.
| Route | Sailings | Crossing |
|---|---|---|
| Tsawwassen ↔ Duke Point (Nanaimo) | 8–10 a day each way | about 2h |
| Horseshoe Bay ↔ Langdale | 8–10 a day each way | about 40 min |
| Horseshoe Bay ↔ Bowen Island | about 16 a day | about 20 min |
| Tsawwassen → Salt Spring (Long Harbour) | 2 a day Mon–Thu; 3–4 Fri–Sun | 1h 25m non-stop; up to 3h |
| Tsawwassen → Galiano | daily non-stops | about 55 min |
| Swartz Bay ↔ Fulford Harbour (Salt Spring) | 8 a day | about 35 min |
| Nanaimo ↔ Gabriola Island | frequent all day | about 25 min |
Checked 2026-09-29 against: BC Ferries Tsawwassen–Duke Point schedule · BC Ferries Horseshoe Bay–Langdale schedule · BC Ferries Tsawwassen–Southern Gulf Islands schedule · BC Ferries Swartz Bay–Fulford Harbour schedule. Policies change; confirm with the operator before booking.
Frequently Asked Questions
How long is the ferry from Vancouver to Nanaimo?
From Tsawwassen to Duke Point, about 2 hours, with 8–10 non-stop sailings a day each way (BC Ferries seasonal schedule, September 2026).
How do I get to Salt Spring Island?
From Tsawwassen to Long Harbour (about 1 hour 25 minutes non-stop) or from Swartz Bay near Victoria to Fulford Harbour (about 35 minutes, 8 sailings a day).