Rome2Rio

How to get fromSt. Louis to Canadaby plane, train (Amtrak), bus (Greyhound, Flixbus), car or shuttle

Find Transport to Canada

See all options

There are 11 ways to get from St. Louis to Canada by plane, train (Amtrak), bus (Greyhound, Flixbus), car, or shuttle

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly to Toronto Pearson International Airport

    best
    1. Fly from Lambert–St. Louis International Airport (STL) to Toronto Pearson International Airport (YYZ)plane plane STL - YYZ
    5h 6m
    $362–1,016
  2. Bus via Indianapolis

    cheapest
    1. Take the bus from St Louis Bus Station to Indianapolis Union Stationbus bus
    2. Take the bus from Indianapolis, IN to Detroit, MIbus bus
    3. Take the bus from Detroit Bus Station to Torontobus bus
    17h 55m
    $127–289
  3. Train via Detroit

    1. Take the train from St. Louis to Chicago Union Stationtrain train
    2. Take the train from Chicago Union Station to Detroittrain train
    3. Take the train from Windsor to Toronto Union Stationtrain train
    16h 39m
    $164–466
  4. Drive 1,201.7 km

    1. Drive from St. Louis to Torontocar car 1,201.7 km
    12h 57m
    $232–335
  5. Fly to Montréal–Pierre Elliott Trudeau International Airport

    1. Fly from Lambert–St. Louis International Airport (STL) to Montréal–Pierre Elliott Trudeau International Airport (YUL)plane plane STL - YUL
    5h 37m
    $461–1,111
  6. Fly to Winnipeg J. A. Richardson International Airport

    1. Fly from Lambert–St. Louis International Airport (STL) to Winnipeg J. A. Richardson International Airport (YWG)plane plane STL - YWG
    7h 49m
    $166–906
  7. Fly to Toronto Island Airport

    1. Fly from Lambert–St. Louis International Airport (STL) to Toronto Island Airport (YTZ)plane plane STL - YTZ
    7h 23m
    $557–1,522
  8. Fly to Ottawa Macdonald-Cartier International Airport

    1. Fly from Lambert–St. Louis International Airport (STL) to Ottawa Macdonald-Cartier International Airport (YOW)plane plane STL - YOW
    7h 44m
    $171–861
  9. Fly to Buffalo Niagara International Airport, shuttle

    1. Fly from Lambert–St. Louis International Airport (STL) to Buffalo Niagara International Airport (BUF)plane plane STL - BUF
    2. Take a shuttle bus from Buffalo Airport to Pearson International Airport Terminal 1shuttle bus
    8h 20m
    $492–2,276
  10. Train

    1. Take the train from St. Louis to Chicago Union Stationtrain train
    2. Take the train from Chicago Union Station to Buffalo Depew Stationtrain train
    3. Take the train from Buffalo to Toronto Union Stationtrain train
    21h 32m
    $152–503
  11. Bus

    1. Take the bus from St Louis Bus Station to Pittsburgh Intermodal Stationbus bus
    2. Take the bus from Pittsburgh to Buffalobus bus
    3. Take the bus from Buffalo to Torontobus bus
    25h 30m
    $160–543

St. Louis to Canada by train and car

Calendar21Weekly Services
Duration16h 39mAverage Duration
Ticket$164Cheapest Price
See schedules

Questions & Answers

What companies run services between St. Louis, MO, USA and Canada?

Air Canada, United Airlines, and two other airlines fly from Lambert–St. Louis International Airport (STL) to Toronto Pearson International Airport (YYZ) every 4 hours. Alternatively, you can take a train from St. Louis to Toronto Union Station via Chicago Union Station, Detroit, and Windsor in around 16h 39m.

Airlines
Train operators
Bus operators

Want to know more about travelling around Canada

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

Need to know: Greyhound

Read the travel guideNeed to know: Greyhound

More Questions & Answers