Rome2Rio

How to get fromMarkham to St. Louisby bus, plane, train (Amtrak), bus (Flixbus, Greyhound), car, or bus (Greyhound)

Find Transport to St. Louis

See all options

There are 7 ways to get from Markham to St. Louis by bus, plane, train (Amtrak), bus (Flixbus, Greyhound), car, 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.

  1. Bus to Toronto Pearson International Airport, fly

    best
    1. Take the bus from Unionville GO Bus to Pearson International Airport Terminal 1bus bus
    2. Fly from Toronto Pearson International Airport (YYZ) to Lambert–St. Louis International Airport (STL)plane plane YYZ - STL
    5h 38m
    $89–480
  2. Train via Detroit

    1. Take the train from Toronto Union Station to Windsortrain train
    2. Take the train from Detroit to Chicago Union Stationtrain train
    3. Take the train from Chicago Union Station to St. Louistrain train
    18h 10m
    $192–561
  3. Bus via Indianapolis

    1. Take the bus from Toronto Pearson Airport to Detroit Bus Stationbus bus
    2. Take the bus from Detroit, MI to Indianapolis, INbus bus
    3. Take the bus from Indianapolis Union Station to St Louis Bus Stationbus bus
    20h 6m
    $105–195
  4. Drive  757.6 mi

    1. Drive from Markham to St. Louiscar car 757.6 mi
    12h 52m
    $174–251
  5. Fly from Toronto Island Airport

    1. Fly from Toronto Island Airport (YTZ) to Lambert–St. Louis International Airport (STL)plane plane YTZ - STL
    8h 7m
    $104–561
  6. Train

    1. Take the train from Toronto Union Station to Buffalotrain train
    2. Take the train from Buffalo Depew Station to Chicago Union Stationtrain train
    3. Take the train from Chicago Union Station to St. Louistrain train
    23h 11m
    $221–658
  7. Bus

    1. Take the bus from Toronto to Buffalobus bus
    2. Take the bus from Buffalo, Ny to Pittsburgh, Pabus bus 530
    3. Take the bus from Pittsburgh Intermodal Station to St Louis Bus Stationbus bus
    27h 6m
    $173–437

Markham to St. Louis by train and car

Calendar21Weekly Services
Duration18h 10mAverage Duration
Ticket$192Cheapest Price
See schedules

Comparing Your Travel Options

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

You can take a train from Centennial GO to St. Louis via Toronto Union Station, Windsor, Detroit, and Chicago Union Station in around 18h 10m. Alternatively, you can take a bus from Highway 7 / Galsworthy Dr to St Louis Bus Station via Richmond Hill Centre, Pearson International Airport Terminal 1, Toronto Pearson Airport, Detroit, MI, and Indianapolis Union Station in around 20h 6m.

Airlines
Train operators
Bus operators

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

Need to know: Greyhound

Read the travel guideNeed to know: Greyhound

Booking & Getting There