There are 7 ways to get from Portland to Diablo Lake by train, car, bus, taxi, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train, drive (Amtrak)
best- Take the train from Portland to Mount Vernon Amtrak StationAmtrak Cascades
- Drive from Mount Vernon Amtrak Station to Diablo Lake
7h 2m$60–287Drive 294.1 mi
cheapest- Drive from Portland to Diablo Lake294.1 mi
5h 43m$54–78Bus, taxi
- Take the bus from Portland Curbside Bus Stop to Seattle Bus Station
- Take the bus from Seattle Bus Station to Mount Vernon Bus Stop
- Take the bus from Skagit Station Gate 1 to Concrete Park & Ride70X
- Take the taxi from Concrete Park & Ride to Diablo Lake
9h 15m$147–257Fly from Portland International Airport, drive
- Fly from Portland International Airport (PDX) to Bellingham International Airport (BLI)PDX - BLI
- Drive from Bellingham-Airport-BLI to Diablo Lake
6h 27m$70–388Train, bus, taxi
- Take the train from Portland to Mount Vernon Amtrak Station
- Take the bus from Skagit Station Gate 1 to SR 20 & Superior Ave70X
- Take the taxi from SR 20 & Superior Ave to Diablo Lake
8h 31m$148–400Bus, taxi via Seattle Airport (SEA)
- Take the bus from Portland Curbside Bus Stop to Seattle Tacoma Intl Airport
- Take the bus from Seattle to Mount Vernon Amtrak Station
- Take the bus from Skagit Station Gate 1 to Concrete Park & Ride70X
- Take the taxi from Concrete Park & Ride to Diablo Lake
9h 40mTrain to Seattle-Tacoma International Airport, fly, drive
- Take the train from Portland to Tacoma
- Fly from Seattle-Tacoma International Airport (SEA) to Bellingham International Airport (BLI)SEA - BLI
- Drive from Bellingham-Airport-BLI to Diablo Lake
7h 43m$76–340
Portland International Airport (PDX) to Bellingham International Airport (BLI) flights
Questions & Answers
The cheapest way to get from Portland to Diablo Lake is to drive which costs $50 - $80 and takes 5h 43m.
The fastest way to get from Portland to Diablo Lake is to drive which takes 5h 43m and costs $50 - $80.
The distance between Portland and Diablo Lake is 319 miles. The road distance is 295.8 miles.
The best way to get from Portland to Diablo Lake without a car is to bus and taxi which takes 9h 15m and costs $140 - $260.
It takes approximately 7h 2m to get from Portland to Diablo Lake, including transfers.
Yes, the driving distance between Portland to Diablo Lake is 296 miles. It takes approximately 5h 43m to drive from Portland to Diablo Lake.
What companies run services between Portland, OR, USA and Diablo Lake, WA, USA?
There is no direct connection from Portland to Diablo Lake. However, you can take the train to Mount Vernon Amtrak Station then drive to Diablo Lake. Alternatively, you can take the bus to Seattle Bus Station, take the bus to Mount Vernon Bus Stop, take the bus to Concrete Park & Ride, then take the taxi to Diablo Lake.
- Website
- alaskaair.com
Flights from Portland International Airport to Bellingham International Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 4h 18m
- When
- Every day
- Estimated price
- $50–360
Flights from Seattle-Tacoma International Airport to Bellingham International Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- $30–250
Rome2Rio's guide to Amtrak
Contact Details
- Phone
- +1 800-872-7245
- Website
- amtrak.com
Train from Portland to Mount Vernon Amtrak Station
- Ave. Duration
- 5h 22m
- Frequency
- Once daily
- Estimated price
- $45–270
- Website
- https://www.amtrak.com/home.html
Train from Portland to Tacoma
- Ave. Duration
- 2h 33m
- Frequency
- Every 4 hours
- Estimated price
- $25–65
- Website
- https://www.amtrak.com/home.html
- Phone
- +1 (855) 626-8585
- Website
- flixbus.com
Bus from Portland Curbside Bus Stop to Seattle Bus Station
- Ave. Duration
- 3h 35m
- Frequency
- 3 times a day
- Estimated price
- $26–100
- Schedules at
- flixbus.com
Bus from Portland Curbside Bus Stop to Seattle Tacoma Intl Airport
- Ave. Duration
- 3h 10m
- Frequency
- 3 times a day
- Estimated price
- $26–100
- Schedules at
- flixbus.com
Rome2Rio's guide to Greyhound USA
Contact Details
- Phone
- +1 214-849-8100
- ifsr@greyhound.com
- Website
- greyhound.com
Bus from Portland Curbside Bus Stop to Seattle Bus Station
- Ave. Duration
- 2h 50m
- Frequency
- Once daily
- Estimated price
- $26–60
- Website
- https://www.greyhound.com/
Bus from Seattle Bus Station to Mount Vernon Bus Stop
- Ave. Duration
- 1h 30m
- Frequency
- 5 times a week
- Estimated price
- $19–28
- Website
- https://www.greyhound.com/
- Phone
- +1 360-757-4433
- custserv@skagittransit.org
- Website
- skagittransit.org
Bus from Skagit Station Gate 1 to Concrete Park & Ride
- Ave. Duration
- 1h 13m
- Frequency
- 3 times a day
- Estimated price
- $1–2
- Website
- https://www.skagittransit.org
- Youth 8-17
- $1
- Adult
- $1–2
Bus from Skagit Station Gate 1 to SR 20 & Superior Ave
- Ave. Duration
- 1h 12m
- Frequency
- 3 times a day
- Estimated price
- $1–2
- Website
- https://www.skagittransit.org
- Youth 8-17
- $1
- Adult
- $1–2
Rome2Rio's guide to Amtrak
Contact Details
- Phone
- +1 800-872-7245
- Website
- amtrak.com
Bus from Seattle to Mount Vernon Amtrak Station
- Ave. Duration
- 1h 30m
- Frequency
- Twice daily
- Website
- https://www.amtrak.com/home.html
- Ave. Duration
- 57 min
- Estimated price
- $100–130
Want to know more about travelling around United States
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Travelling to the US: What do I need to know?
Read the travel guide
Why you should take the train in the US
Read the travel guide
Need to know: Greyhound
Read the travel guide









