There are 12 ways to get from Toronto to Salem by plane, train, train (Amtrak), bus (Flixbus, Greyhound), car, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Toronto Pearson International Airport to Portland International Airport, train
best- Fly from Toronto Pearson International Airport (YYZ) to Portland International Airport (PDX)plane YYZ - PDX
- Take the train from Portland to Salemtrain
12h 42m$345–609Fly Toronto Pearson International Airport to Mahlon Sweet Field Airport, train
cheapest- Fly from Toronto Pearson International Airport (YYZ) to Mahlon Sweet Field Airport (EUG)plane YYZ - EUG
- Take the train from Eugene to Salemtrain
13h 30m$154–551Train via Chicago
- Take the train from Toronto Union Station to Windsortrain
- Take the train from Detroit to Chicago Union Stationtrain
- Take the train from Chicago Union Station to Portlandtrain
- Take the train from Portland to Salemtrain
2d 12h$1,440–2,395Bus
- Take the bus from Toronto to Detroit Bus Stationbus
- Take the bus from Detroit Bus Station to Chicago Bus Stationbus
- Take the bus from Chicago Bus Station to Denver Union Stationbus
- Take the bus from Denver Union Station to Pasco Bus Stopbus
- Take the bus from Pasco Bus Stop to Salembus
2d 19h$515–803Drive 2,614.8 mi
- Drive from Toronto to Salemcar 2,614.8 mi
43h 8m$538–777Fly Toronto Island Airport to Portland International Airport, train
- Fly from Toronto Island Airport (YTZ) to Portland International Airport (PDX)plane YTZ - PDX
- Take the train from Portland to Salemtrain
13h$462–1,259Bus to Buffalo Niagara International Airport, fly to Portland International Airport, train
- Take the bus from Toronto to Buffalobus
- Fly from Buffalo Niagara International Airport (BUF) to Portland International Airport (PDX)plane BUF - PDX
- Take the train from Portland to Salemtrain
15h 38m$214–805Fly Toronto Pearson International Airport to Seattle-Tacoma International Airport, train
- Fly from Toronto Pearson International Airport (YYZ) to Seattle-Tacoma International Airport (SEA)plane YYZ - SEA
- Take the train from Tacoma to Salemtrain
13h 59m$314–732Train to Detroit, fly to Portland International Airport, train
- Take the train from Toronto Union Station to Windsortrain
- Fly from Detroit (DTW) to Portland International Airport (PDX)plane DTW - PDX
- Take the train from Portland to Salemtrain
14h 40m$315–1,210Fly Toronto Island Airport to Mahlon Sweet Field Airport, train
- Fly from Toronto Island Airport (YTZ) to Mahlon Sweet Field Airport (EUG)plane YTZ - EUG
- Take the train from Eugene to Salemtrain
18h$156–633Bus, train
- Take the bus from Toronto to Detroit Bus Stationbus
- Take the bus from Detroit Bus Station to Milwaukee Intermodal Stationbus
- Take the train from Milwaukee to Portlandtrain
- Take the bus from Portland Amtrak Station to Salem Amtrak Station Bus Platformbus
2d 15h$1,200–2,071Train
- Take the train from Toronto Union Station to Vancouvertrain
- Take the train from Vancouver to Centralia Amtrak Stationtrain
- Take the train from Centralia Amtrak Station to Salemtrain
4d 11h$944–1,808
Toronto to Salem by train and car
Comparing Your Travel Options
The cheapest way to get from Toronto to Salem is to fly and train which costs $150 - $550 and takes 13h 30m.
The fastest way to get from Toronto to Salem is to fly and train which takes 12h 42m and costs $340 - $650.
No, there is no direct bus from Toronto to Salem. However, there are services departing from Toronto and arriving at Salem via Detroit Bus Station, Chicago Bus Station, Denver Union Station and Pasco Bus Stop. The journey, including transfers, takes approximately 2 days 19h.
No, there is no direct train from Toronto station to Salem. However, there are services departing from Toronto Union Station and arriving at Salem via Detroit, Chicago Union Station and Portland. The journey, including transfers, takes approximately 2 days 12h.
The distance between Toronto and Salem is 2184 miles. The road distance is 2630 miles.
The best way to get from Toronto to Salem without a car is to bus which takes 2 days 19h and costs $500 - $850.
It takes approximately 12h 42m to get from Toronto to Salem, including transfers.
Toronto to Salem bus services, operated by Flixbus USA, depart from Toronto station.
Toronto to Salem train services, operated by VIA Rail, depart from Toronto Union Station.
The best way to get from Toronto to Salem is to train via Chicago which takes 2 days 12h and costs $1,400 - $2,400. Alternatively, you can bus, which costs $500 - $850 and takes 2 days 19h.
What companies run services between Toronto, ON, Canada and Salem, OR, USA?
You can take a train from Toronto Union Station to Salem via Windsor, Detroit, Chicago Union Station, and Portland in around 2d 12h. Alternatively, you can take a bus from Toronto to Salem via Detroit Bus Station, Chicago Bus Station, Denver Union Station, and Pasco Bus Stop in around 2d 19h.
- Website
- delta.com
Flights from Toronto Pearson International Airport to Portland International Airport via Minneapolis
- Ave. Duration
- 8h 48m
- When
- Every day
- Estimated price
- $130–600
Flights from Toronto Pearson International Airport to Portland International Airport via Salt Lake City
- Ave. Duration
- 7h 29m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- $140–600
Flights from Toronto Pearson International Airport to Portland International Airport via Detroit
- Ave. Duration
- 9h 11m
- When
- Every day
- Estimated price
- $140–600
Flights from Toronto Pearson International Airport to Portland International Airport via Calgary
- Ave. Duration
- 8h 20m
- When
- Friday
- Estimated price
- $210–1,100
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Salt Lake City
- Ave. Duration
- 7h 28m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- $120–490
Flights from Buffalo Niagara International Airport to Portland International Airport via Minneapolis
- Ave. Duration
- 6h 59m
- When
- Tuesday, Friday, and Saturday
- Estimated price
- $160–700
Flights from Buffalo Niagara International Airport to Portland International Airport via Detroit
- Ave. Duration
- 8h 6m
- When
- Every day
- Estimated price
- $160–700
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport via Minneapolis
- Ave. Duration
- 7h 50m
- When
- Tuesday to Sunday
- Estimated price
- $130–550
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport via Calgary
- Ave. Duration
- 9h 10m
- When
- Saturday
- Estimated price
- $200–450
Flights from Detroit to Portland International Airport
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- $220–950
Flights from Detroit to Portland International Airport via Minneapolis
- Ave. Duration
- 6h 50m
- When
- Every day
- Estimated price
- $220–950
Flights from Detroit to Portland International Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 8h 24m
- When
- Every day
- Estimated price
- $230–1,000
Flights from Toronto Island Airport to Mahlon Sweet Field Airport via Chicago O'Hare, Salt Lake City
- Ave. Duration
- 14h 48m
- When
- Every day
- Estimated price
- $120–550
- Website
- united.com
Flights from Toronto Pearson International Airport to Portland International Airport via Denver
- Ave. Duration
- 7h 52m
- When
- Every day
- Estimated price
- $140–600
Flights from Toronto Island Airport to Portland International Airport via Chicago O'Hare
- Ave. Duration
- 8h 57m
- When
- Every day
- Estimated price
- $150–650
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Denver
- Ave. Duration
- 8h 2m
- When
- Every day
- Estimated price
- $120–500
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Chicago O'Hare
- Ave. Duration
- 8h 12m
- When
- Every day
- Estimated price
- $110–480
Flights from Buffalo Niagara International Airport to Portland International Airport via Denver
- Ave. Duration
- 7h 32m
- When
- Every day
- Estimated price
- $170–750
Flights from Buffalo Niagara International Airport to Portland International Airport via Chicago O'Hare
- Ave. Duration
- 8h 19m
- When
- Every day
- Estimated price
- $160–700
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport
- Ave. Duration
- 5h 34m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- $130–550
Flights from Detroit to Portland International Airport via Denver
- Ave. Duration
- 8h 10m
- When
- Every day
- Estimated price
- $230–1,000
Flights from Toronto Island Airport to Mahlon Sweet Field Airport via Chicago O'Hare, Denver
- Ave. Duration
- 13h 12m
- When
- Every day
- Estimated price
- $130–550
- Website
- southwest.com
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Denver
- Ave. Duration
- 8h 20m
- When
- Every day
- Estimated price
- $120–500
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Sacramento
- Ave. Duration
- 8h 20m
- When
- Monday and Thursday
- Estimated price
- $130–550
Flights from Buffalo Niagara International Airport to Portland International Airport via Chicago Midway
- Ave. Duration
- 7h 52m
- When
- Tuesday, Wednesday, and Saturday
- Estimated price
- $160–700
Flights from Buffalo Niagara International Airport to Portland International Airport via Las Vegas
- Ave. Duration
- 8h 55m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- $200–800
Flights from Buffalo Niagara International Airport to Portland International Airport via Denver
- Ave. Duration
- 10h 50m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $170–750
Flights from Buffalo Niagara International Airport to Portland International Airport via Baltimore
- Ave. Duration
- 11h 15m
- When
- Monday, Thursday, and Friday
- Estimated price
- $190–800
Flights from Detroit to Portland International Airport via Denver
- Ave. Duration
- 7h 41m
- When
- Saturday, Monday, Thursday, Friday, and Sunday
- Estimated price
- $230–1,000
Flights from Detroit to Portland International Airport via Chicago Midway
- Ave. Duration
- 7h 15m
- When
- Tuesday, Wednesday, and Saturday
- Estimated price
- $220–950
Flights from Toronto Island Airport to Mahlon Sweet Field Airport via Chicago O'Hare, Denver
- Ave. Duration
- 12h 25m
- When
- Every day
- Estimated price
- $130–550
- Website
- westjet.com
Flights from Toronto Pearson International Airport to Portland International Airport via Minneapolis
- Ave. Duration
- 8h 48m
- When
- Every day
- Estimated price
- $130–600
Flights from Toronto Pearson International Airport to Portland International Airport via Salt Lake City
- Ave. Duration
- 7h 29m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- $140–600
Flights from Toronto Pearson International Airport to Portland International Airport via Calgary
- Ave. Duration
- 8h 20m
- When
- Friday
- Estimated price
- $210–1,100
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport via Calgary
- Ave. Duration
- 9h 10m
- When
- Saturday
- Estimated price
- $200–450
Flights from Detroit to Portland International Airport via Minneapolis
- Ave. Duration
- 6h 50m
- When
- Every day
- Estimated price
- $220–950
Flights from Detroit to Portland International Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 7h 24m
- When
- Every day
- Estimated price
- $230–1,000
- Website
- aircanada.com
Flights from Toronto Pearson International Airport to Portland International Airport via Vancouver
- Ave. Duration
- 10h 37m
- When
- Every day
- Estimated price
- $150–600
Flights from Toronto Island Airport to Portland International Airport via Chicago O'Hare
- Ave. Duration
- 9h 29m
- When
- Every day
- Estimated price
- $150–650
Flights from Buffalo Niagara International Airport to Portland International Airport via Chicago O'Hare
- Ave. Duration
- 8h 33m
- When
- Every day
- Estimated price
- $160–700
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport
- Ave. Duration
- 5h 34m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- $130–550
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport via Vancouver
- Ave. Duration
- 7h 27m
- When
- Every day
- Estimated price
- $130–600
- Website
- alaskaair.com
Flights from Toronto Pearson International Airport to Portland International Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 7h 40m
- When
- Every day
- Estimated price
- $300–600
Flights from Toronto Island Airport to Portland International Airport via Nashville
- Ave. Duration
- 10h 36m
- When
- Every day
- Estimated price
- $340–1,300
Flights from Toronto Island Airport to Portland International Airport via Boston
- Ave. Duration
- 11h 29m
- When
- Every day
- Estimated price
- $350–1,300
Flights from Toronto Island Airport to Portland International Airport via Newark
- Ave. Duration
- 11h 34m
- When
- Every day
- Estimated price
- $350–1,300
Flights from Toronto Pearson International Airport to Mahlon Sweet Field Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 9h 39m
- When
- Every day
- Estimated price
- $250–1,000
Flights from Toronto Pearson International Airport to Seattle-Tacoma International Airport
- Ave. Duration
- 5h 30m
- When
- Every day
- Estimated price
- $280–600
Flights from Detroit to Portland International Airport via Seattle-Tacoma International Airport
- Ave. Duration
- 7h 10m
- When
- Every day
- Estimated price
- $340–1,500
Flights from Toronto Island Airport to Mahlon Sweet Field Airport via Chicago O'Hare, Portland International Airport
- Ave. Duration
- 14h 55m
- When
- Every day
- Estimated price
- $270–1,100
- Website
- jetblue.com
Flights from Toronto Island Airport to Portland International Airport via Boston
- Ave. Duration
- 8h 55m
- When
- Every day
- Estimated price
- $190–750
- Website
- aa.com
Flights from Buffalo Niagara International Airport to Portland International Airport via Chicago O'Hare
- Ave. Duration
- 11h 16m
- When
- Saturday
- Estimated price
- $160–700
Rome2Rio's guide to Amtrak
Contact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Portland to Salem
- Ave. Duration
- 1h 10m
- Frequency
- 3 times a day
- Estimated price
- $29–45
- Website
- Amtrak
Train from Detroit to Chicago Union Station
- Ave. Duration
- 5h 6m
- Frequency
- 3 times a day
- Estimated price
- $150–240
- Website
- Amtrak
Train from Chicago Union Station to Portland
- Ave. Duration
- 46h 12m
- Frequency
- Once daily
- Estimated price
- $1,200–1,900
- Website
- Amtrak
Train from Portland to Salem
- Ave. Duration
- 1h 10m
- Frequency
- 3 times a day
- Estimated price
- $29–45
- Website
- Amtrak
Train from Portland to Salem
- Ave. Duration
- 1h 10m
- Frequency
- 3 times a day
- Estimated price
- $29–45
- Website
- Amtrak
Train from Eugene to Salem
- Ave. Duration
- 1h 9m
- Frequency
- 3 times a day
- Estimated price
- $35–65
- Website
- Amtrak
Train from Portland to Salem
- Ave. Duration
- 1h 10m
- Frequency
- 3 times a day
- Estimated price
- $29–45
- Website
- Amtrak
Train from Tacoma to Salem
- Ave. Duration
- 4h 11m
- Frequency
- 3 times a day
- Estimated price
- $100–170
- Website
- Amtrak
Train from Portland to Salem
- Ave. Duration
- 1h 10m
- Frequency
- 3 times a day
- Estimated price
- $29–45
- Website
- Amtrak
Train from Eugene to Salem
- Ave. Duration
- 1h 9m
- Frequency
- 3 times a day
- Estimated price
- $35–65
- Website
- Amtrak
Train from Milwaukee to Portland
- Ave. Duration
- 44h 32m
- Frequency
- Once daily
- Estimated price
- $1,100–1,900
- Website
- Amtrak
Train from Vancouver to Centralia Amtrak Station
- Ave. Duration
- 6h 34m
- Frequency
- Once daily
- Estimated price
- $130–210
- Website
- Amtrak
Train from Centralia Amtrak Station to Salem
- Ave. Duration
- 3h 18m
- Frequency
- 3 times a day
- Estimated price
- $75–130
- Website
- Amtrak
- Phone
- +1 888 842-7245
- Website
- VIA Rail
Train from Toronto Union Station to Windsor
- Ave. Duration
- 4h 18m
- Frequency
- 4 times a day
- Estimated price
- $60–210
- Website
- VIA Rail
- Escape
- $60–150
- Business
- $95–200
- Business Plus
- $100–210
- Economy
- $65–160
- Economy Plus
- $70–160
Train from Toronto Union Station to Windsor
- Ave. Duration
- 4h 18m
- Frequency
- 4 times a day
- Estimated price
- $60–210
- Website
- VIA Rail
- Escape
- $60–150
- Business
- $95–200
- Business Plus
- $100–210
- Economy
- $65–160
- Economy Plus
- $70–160
Train from Toronto Union Station to Vancouver
- Ave. Duration
- 4d
- Frequency
- Twice a week
- Estimated price
- $700–1,500
- Website
- VIA Rail
- Escape
- $700–1,500
- Business
- $800–1,300
- Business Plus
- $800–1,300
- Economy
- $800–1,500
- Economy Plus
- $900–1,500
- Phone
- +1 (855) 626-8585
- Website
- Flixbus USA
Bus from Toronto to Detroit Bus Station
- Ave. Duration
- 6h 50m
- Frequency
- 4 times a day
- Estimated price
- $35–60
- Schedules at
- Flixbus USA
Bus from Detroit Bus Station to Chicago Bus Station
- Ave. Duration
- 7h 20m
- Frequency
- Twice daily
- Estimated price
- $45–70
- Schedules at
- Flixbus USA
Bus from Pasco Bus Stop to Salem
- Ave. Duration
- 5h 40m
- Frequency
- Once daily
- Estimated price
- $40–65
- Schedules at
- Flixbus USA
Bus from Toronto to Buffalo
- Ave. Duration
- 3h 20m
- Frequency
- 4 times a day
- Estimated price
- $16–25
- Schedules at
- Flixbus USA
Bus from Toronto to Detroit Bus Station
- Ave. Duration
- 6h 50m
- Frequency
- 4 times a day
- Estimated price
- $35–60
- Schedules at
- Flixbus USA
Bus from Detroit Bus Station to Milwaukee Intermodal Station
- Ave. Duration
- 7h 40m
- Frequency
- 4 times a week
- Estimated price
- $55–90
- Schedules at
- Flixbus USA
Rome2Rio's guide to Greyhound USA
Contact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from Detroit Bus Station to Chicago Bus Station
- Ave. Duration
- 6h 5m
- Frequency
- 3 times a day
- Estimated price
- $50–80
- Website
- Greyhound
Bus from Chicago Bus Station to Denver Union Station
- Ave. Duration
- 21h 35m
- Frequency
- Once daily
- Estimated price
- $180–280
- Website
- Greyhound
Bus from Denver Union Station to Pasco Bus Stop
- Ave. Duration
- 22h 55m
- Frequency
- Once daily
- Estimated price
- $210–320
- Website
- Greyhound
Bus from Toronto to Buffalo
- Ave. Duration
- 2h 45m
- Frequency
- 3 times a day
- Estimated price
- $19–29
- Website
- Greyhound
- Phone
- +1 888-846-4183
- Website
- Point
Bus from Portland Amtrak Station to Salem Amtrak Station Bus Platform
- Ave. Duration
- 1h 20m
- Frequency
- 5 times a day
- Estimated price
- $13–23
- Website
- Point
- Adult One-way
- $13–23
- Phone
- +1 541-366-5110
- [email protected]
- Website
- Pacific Crest Bus Lines
Bus from Portland Amtrak Station to Salem Amtrak Station Bus Platform
- Ave. Duration
- 1h
- Frequency
- Once daily
- Estimated price
- $5–21
- Website
- Pacific Crest Bus Lines
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
Booking & Getting There
Toronto to Salem bus services, operated by Flixbus USA, arrive at Detroit Bus Station.
Salem is 3h behind Toronto. It is currently 9:09 AM in Toronto and 6:09 AM in Salem.
Toronto to Salem train services, operated by VIA Rail, arrive at Windsor station.
Yes, the driving distance between Toronto to Salem is 2630 miles. It takes approximately 43h 8m to drive from Toronto to Salem.
Book your Toronto to Salem bus tickets online with Omio and FlixBus.
There are one+ hotels available in Salem.


















