There are 10 ways to get from Des Moines to Waterloo by plane, bus, train, bus (Greyhound, Amtrak, Flixbus), car, or bus (Greyhound, Flixbus)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Des Moines to Toronto Pearson International Airport, bus
best- Fly from Des Moines (DSM) to Toronto Pearson International Airport (YYZ)plane DSM - YYZ
- Take the bus from Bramalea GO Bus to Kitchener GO Busbus
6h 30m$166–754Drive to Fort Dodge Municipal Airport, fly to Toronto Pearson International Airport, bus
cheapest- Drive from Des Moines to Fort Dodge Municipal Airport (FOD)car
- Fly from Fort Dodge Municipal Airport (FOD) to Toronto Pearson International Airport (YYZ)plane FOD - YYZ
- Take the bus from Bramalea GO Bus to Kitchener GO Busbus
8h 52m$137–606Bus, train
- Take the bus from Des Moines to Chicago Bus Stationbus
- Take the train from Chicago Union Station to Port Huron Stationtrain
- Take the train from Sarnia to Kitchenertrain
19h 23m$227–630Bus via Chicago
- Take the bus from Des Moines to Chicago Bus Stationbus
- Take the bus from Chicago Union Station to Detroitbus
- Take the bus from Detroit Bus Station to Kitchenerbus
20h 14m$207–324Drive 1,225.6 km
- Drive from Des Moines to Waterloocar 1,225.6 km
13h 9m$249–359Fly Des Moines to Toronto Island Airport, train
- Fly from Des Moines (DSM) to Toronto Island Airport (YTZ)plane DSM - YTZ
- Take the train from Union Station GO to Kitchener GOtrain
7h 1m$175–805Fly Des Moines to Buffalo Niagara International Airport, bus
- Fly from Des Moines (DSM) to Buffalo Niagara International Airport (BUF)plane DSM - BUF
- Take the bus from Buffalo to Mississaugabus
- Take the bus from Winston Churchill Transitway Station to Wilfrid Laurier Universitybus
9h 34m$272–1,330Fly Des Moines to Erie International Airport, drive
- Fly from Des Moines (DSM) to Erie International Airport (ERI)plane DSM - ERI
- Drive from Erie-Airport-ERI to Waterloocar
8h 22m$223–883Bus, train via Galesburg
- Take the bus from Des Moines to Galesburgbus
- Take the train from Galesburg Amtrak Station to Chicago Union Stationtrain
- Take the train from Chicago Union Station to Port Huron Stationtrain
- Take the train from Sarnia to Kitchenertrain
20h 34m$253–726Bus
- Take the bus from Des Moines to Indianapolis Union Stationbus
- Take the bus from Indianapolis, IN to Detroit, MIbus
- Take the bus from Detroit Bus Station to Kitchenerbus
21h 25m$178–326
Des Moines to Waterloo by bus, foot, train, and car
Comparing Your Travel Options
The cheapest way to get from Des Moines to Waterloo is to bus which costs $170 - $330 and takes 21h 25m.
The fastest way to get from Des Moines to Waterloo is to fly and bus which takes 6h 30m and costs $160 - $800.
No, there is no direct bus from Des Moines to Waterloo. However, there are services departing from Des Moines and arriving at Kitchener via Chicago Union Station, Cass & Milwaukee and Detroit Bus Station. The journey, including transfers, takes approximately 20h 14m.
The distance between Des Moines and Waterloo is 1278 km. The road distance is 1225.6 km.
The best way to get from Des Moines to Waterloo without a car is to bus via Chicago which takes 20h 14m and costs $200 - $330.
It takes approximately 6h 30m to get from Des Moines to Waterloo, including transfers.
Des Moines to Waterloo bus services, operated by Greyhound USA, depart from Des Moines station.
Des Moines to Waterloo bus services, operated by Greyhound USA, arrive at Indianapolis Union Station.
Waterloo is 1h ahead of Des Moines. It is currently 3:40 AM in Des Moines and 4:40 AM in Waterloo.
Yes, the driving distance between Des Moines to Waterloo is 1226 km. It takes approximately 13h 9m to drive from Des Moines to Waterloo.
What companies run services between Des Moines, IA, USA and Waterloo, ON, Canada?
You can take a bus from Des Moines to Kitchener via Chicago Bus Station, Chicago Union Station, Detroit, Cass & Milwaukee, Larned & Shelby, and Detroit Bus Station in around 20h 14m.
- Website
- aa.com
Flights from Des Moines to Toronto Pearson International Airport via Chicago O'Hare
- Ave. Duration
- 6h 4m
- When
- Every day
- Estimated price
- $120–700
Flights from Des Moines to Toronto Pearson International Airport via Reagan Washington
- Ave. Duration
- 6h 11m
- When
- Every day
- Estimated price
- $180–900
Flights from Des Moines to Toronto Pearson International Airport via New York La Guardia
- Ave. Duration
- 6h 38m
- When
- Every day
- Estimated price
- $190–900
Flights from Des Moines to Toronto Pearson International Airport via Philadelphia
- Ave. Duration
- 7h 44m
- When
- Every day
- Estimated price
- $180–900
Flights from Des Moines to Buffalo Niagara International Airport via Chicago O'Hare
- Ave. Duration
- 6h 32m
- When
- Every day
- Estimated price
- $200–1,200
Flights from Des Moines to Buffalo Niagara International Airport via Reagan Washington
- Ave. Duration
- 6h 33m
- When
- Every day
- Estimated price
- $270–1,400
Flights from Des Moines to Buffalo Niagara International Airport via Philadelphia
- Ave. Duration
- 7h 21m
- When
- Every day
- Estimated price
- $280–1,400
Flights from Des Moines to Erie International Airport via Chicago O'Hare
- Ave. Duration
- 6h 16m
- When
- Every day
- Estimated price
- $130–750
Flights from Des Moines to Erie International Airport via Charlotte
- Ave. Duration
- 8h 49m
- When
- Every day
- Estimated price
- $200–1,000
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Chicago Union Station to Port Huron Station
- Ave. Duration
- 6h 31m
- Frequency
- Once daily
- Estimated price
- $110–270
- Website
- Amtrak
Train from Galesburg Amtrak Station to Chicago Union Station
- Ave. Duration
- 2h 55m
- Frequency
- 3 times a day
- Estimated price
- $55–140
- Website
- Amtrak
Train from Chicago Union Station to Port Huron Station
- Ave. Duration
- 6h 31m
- Frequency
- Once daily
- Estimated price
- $110–270
- Website
- Amtrak
- Phone
- +1 888-438-6646
- Website
- GO Transit
Bus from Bramalea GO Bus to Kitchener GO Bus
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- $14–17
- Website
- GO Transit
- Website
- GO Transit Schedules
- Passenger
- $14–17
Bus from Winston Churchill Transitway Station to Wilfrid Laurier University
- Ave. Duration
- 1h 25m
- Frequency
- Hourly
- Estimated price
- $14–17
- Website
- GO Transit
- Website
- GO Transit Schedules
- Passenger
- $14–17
Bus from Bramalea GO Bus to Kitchener GO Bus
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- $14–17
- Website
- GO Transit
- Website
- GO Transit Schedules
- Passenger
- $14–17
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
Travelling to the US: What do I need to know?
Read the travel guide
Need to know: Greyhound
Read the travel guide
Why you should take the train in the US
Read the travel guide
Booking & Getting There
Book your Des Moines to Waterloo bus tickets online with Omio.
There are 222+ hotels available in Waterloo.




