There are 10 ways to get from Canada to St. Louis by plane, train (Amtrak), bus (Flixbus, Greyhound), car, bus, or bus (Greyhound)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Toronto Pearson International Airport
best- Fly from Toronto Pearson International Airport (YYZ) to Lambert–St. Louis International Airport (STL)plane YYZ - STL
5h 24m$88–469Train via Detroit
- 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 St. Louistrain
16h 24m$361–691Bus via Indianapolis
- Take the bus from Toronto to Detroit Bus Stationbus
- Take the bus from Detroit to Indianapolisbus
- Take the bus from Indianapolis Union Station to St Louis Bus Stationbus
18h 5m$106–193Drive 746.8 mi
- Drive from Toronto to St. Louiscar 746.8 mi
12h 44m$171–247Fly from Montréal–Pierre Elliott Trudeau International Airport
- Fly from Montréal–Pierre Elliott Trudeau International Airport (YUL) to Lambert–St. Louis International Airport (STL)plane YUL - STL
6h 9m$116–606Fly from Toronto Island Airport
- Fly from Toronto Island Airport (YTZ) to Lambert–St. Louis International Airport (STL)plane YTZ - STL
7h 31m$98–553Fly from Ottawa Macdonald-Cartier International Airport
- Fly from Ottawa Macdonald-Cartier International Airport (YOW) to Lambert–St. Louis International Airport (STL)plane YOW - STL
8h 43m$116–606Bus to Buffalo Niagara International Airport, fly
- Take the bus from Toronto to Buffalobus
- Fly from Buffalo Niagara International Airport (BUF) to Lambert–St. Louis International Airport (STL)plane BUF - STL
10h 18m$125–659Train
- Take the train from Toronto Union Station to Buffalotrain
- Take the train from Buffalo Depew Station to Chicago Union Stationtrain
- Take the train from Chicago Union Station to St. Louistrain
21h 25m$471–861Bus
- Take the bus from Toronto to Buffalobus
- Take the bus from Buffalo, Ny to Pittsburgh, Pabus 530
- Take the bus from Pittsburgh Intermodal Station to St Louis Bus Stationbus
25h 35m$182–450
Canada to St. Louis by bus
Comparing Your Travel Options
The cheapest way to get from Canada to St. Louis is to bus via Indianapolis which costs $100 - $200 and takes 18h 5m.
The fastest way to get from Canada to St. Louis is to fly which takes 5h 24m and costs $85 - $470.
No, there is no direct bus from Canada to St. Louis station. However, there are services departing from Toronto and arriving at St Louis Bus Station via Detroit and Indianapolis Union Station. The journey, including transfers, takes approximately 18h 5m.
No, there is no direct train from Canada station to St. Louis. However, there are services departing from Toronto Union Station and arriving at St. Louis via Detroit and Chicago Union Station. The journey, including transfers, takes approximately 16h 24m.
The distance between Canada and St. Louis is 687 miles. The road distance is 751.1 miles.
The best way to get from Canada to St. Louis without a car is to bus via Indianapolis which takes 18h 5m and costs $100 - $200.
It takes approximately 5h 24m to get from Canada to St. Louis, including transfers.
Canada to St. Louis bus services, operated by Flixbus USA, depart from Toronto station.
Canada to St. Louis train services, operated by VIA Rail, depart from Toronto Union Station.
The best way to get from Canada to St. Louis is to fly which takes 5h 24m and costs $85 - $470. Alternatively, you can train via Detroit, which costs $360 - $700 and takes 16h 24m, you could also bus via Indianapolis, which costs $100 - $200 and takes 18h 5m.
What companies run services between Canada and St. Louis, MO, USA?
Air Canada, American Airlines, and two other airlines fly from Toronto Pearson International Airport (YYZ) to Lambert–St. Louis International Airport (STL) hourly. Alternatively, you can take a train from Toronto Union Station to St. Louis via Windsor, Detroit, and Chicago Union Station in around 16h 24m.
- Website
- united.com
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport
- Ave. Duration
- 2h 13m
- When
- Every day
- Estimated price
- $85–470
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 44m
- When
- Every day
- Estimated price
- $85–480
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport
- Ave. Duration
- 2h 51m
- When
- Every day
- Estimated price
- $110–600
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 43m
- When
- Every day
- Estimated price
- $110–600
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 38m
- When
- Every day
- Estimated price
- $95–550
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via Washington Dulles
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- $120–600
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 35m
- When
- Every day
- Estimated price
- $110–600
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Newark
- Ave. Duration
- 6h 43m
- When
- Every day
- Estimated price
- $140–700
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Washington Dulles
- Ave. Duration
- 6h 30m
- When
- Every day
- Estimated price
- $130–700
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 7m
- When
- Every day
- Estimated price
- $100–600
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Washington Dulles
- Ave. Duration
- 5h 20m
- When
- Tuesday and Saturday
- Estimated price
- $130–650
- Website
- aircanada.com
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport
- Ave. Duration
- 2h 13m
- When
- Every day
- Estimated price
- $85–470
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 44m
- When
- Every day
- Estimated price
- $85–480
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport
- Ave. Duration
- 2h 51m
- When
- Every day
- Estimated price
- $110–600
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Toronto Pearson International Airport
- Ave. Duration
- 5h 13m
- When
- Every day
- Estimated price
- $110–600
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 43m
- When
- Every day
- Estimated price
- $110–600
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 38m
- When
- Every day
- Estimated price
- $95–550
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via Montréal–Pierre Elliott Trudeau International Airport
- Ave. Duration
- 6h 51m
- When
- Every day
- Estimated price
- $140–650
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 35m
- When
- Every day
- Estimated price
- $110–600
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Toronto Pearson International Airport
- Ave. Duration
- 6h 18m
- When
- Every day
- Estimated price
- $110–600
Flights from Ottawa Macdonald-Cartier International Airport to Lambert–St. Louis International Airport via Montréal–Pierre Elliott Trudeau International Airport
- Ave. Duration
- 8h 31m
- When
- Every day
- Estimated price
- $130–650
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 7m
- When
- Every day
- Estimated price
- $100–600
- Website
- southwest.com
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via New York La Guardia
- Ave. Duration
- 5h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $130–650
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Chicago Midway
- Ave. Duration
- 4h 36m
- When
- Saturday to Wednesday
- Estimated price
- $100–600
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Nashville
- Ave. Duration
- 4h 45m
- When
- Monday to Wednesday
- Estimated price
- $120–650
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Baltimore
- Ave. Duration
- 5h 3m
- When
- Saturday, Monday, Thursday, Friday, and Sunday
- Estimated price
- $130–650
- Website
- delta.com
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Detroit
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- $85–470
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Minneapolis
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- $120–600
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Detroit
- Ave. Duration
- 4h 59m
- When
- Every day
- Estimated price
- $110–600
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via New York La Guardia
- Ave. Duration
- 5h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $130–650
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Detroit
- Ave. Duration
- 5h 26m
- When
- Every day
- Estimated price
- $100–600
- Website
- aa.com
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 48m
- When
- Every day
- Estimated price
- $85–480
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 13m
- When
- Monday, Tuesday, Wednesday, and Friday
- Estimated price
- $110–600
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via New York La Guardia
- Ave. Duration
- 5h 34m
- When
- Monday, Tuesday, Wednesday, Thursday, and Sunday
- Estimated price
- $130–650
Flights from Buffalo Niagara International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- $100–600
- Website
- flyporter.com
Flights from Toronto Pearson International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 4h 41m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $85–480
Flights from Montréal–Pierre Elliott Trudeau International Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 5h 13m
- When
- Monday, Tuesday, Wednesday, and Friday
- Estimated price
- $110–600
Flights from Toronto Island Airport to Lambert–St. Louis International Airport via Chicago O'Hare
- Ave. Duration
- 6h 15m
- When
- Every day
- Estimated price
- $250–1,100
- 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 Buffalo
- Ave. Duration
- 4h 6m
- Frequency
- Once daily
- Estimated price
- $30–180
- Website
- VIA Rail
- Escape
- $30–90
- Business
- $60–160
- Business Plus
- $70–180
- Economy
- $35–100
- Economy Plus
- $35–110
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- 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 St. Louis
- Ave. Duration
- 4h 46m
- Frequency
- 5 times a day
- Estimated price
- $150–240
- Website
- Amtrak
Train from Buffalo Depew Station to Chicago Union Station
- Ave. Duration
- 10h 33m
- Frequency
- Twice daily
- Estimated price
- $290–450
- Website
- Amtrak
Train from Chicago Union Station to St. Louis
- Ave. Duration
- 4h 46m
- Frequency
- 5 times a day
- Estimated price
- $150–240
- Website
- Amtrak
- 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 Toronto to Buffalo
- Ave. Duration
- 3h 20m
- Frequency
- 4 times a day
- Estimated price
- $16–25
- Schedules at
- Flixbus USA
- Phone
- +1 888-378-3823
- [email protected]
- Website
- Barons Bus
Bus from Detroit to Indianapolis
- Ave. Duration
- 5h 20m
- Frequency
- Once daily
- Estimated price
- $27–70
- Website
- Barons Bus
Rome2Rio's guide to Greyhound USA
Contact DetailsContact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from Indianapolis Union Station to St Louis Bus Station
- Ave. Duration
- 3h 55m
- Frequency
- 3 times a day
- Estimated price
- $40–65
- Website
- Greyhound
Bus from Toronto to Buffalo
- Ave. Duration
- 2h 45m
- Frequency
- 3 times a day
- Estimated price
- $19–28
- Website
- Greyhound
Bus from Pittsburgh Intermodal Station to St Louis Bus Station
- Ave. Duration
- 13h 10m
- Frequency
- 3 times a day
- Estimated price
- $110–170
- Website
- Greyhound
- Phone
- +1 800-858-8555
- Website
- Trailways
Bus from Toronto to Buffalo
- Saver
- $22–60
- Flexible
- $40–60
Bus from Buffalo, Ny to Pittsburgh, Pa
- Saver
- $50–210
- Flexible
- $90–220
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
Canada to St. Louis bus services, operated by Flixbus USA, arrive at Detroit Bus Station.
Canada to St. Louis train services, operated by VIA Rail, arrive at Buffalo station.
Yes, the driving distance between Canada to St. Louis is 751 miles. It takes approximately 12h 44m to drive from Canada to St. Louis.
Book your Canada to St. Louis train tickets online with Omio.
Book your Canada to St. Louis bus tickets online with Omio.
There are 569+ hotels available in St. Louis.
















