There are 5 ways to get from Oklahoma City to St. Louis by plane, bus (Greyhound), train (Amtrak), car, or taxi
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 Will Rogers World Airport
best- Fly from Will Rogers World Airport (OKC) to Lambert–St. Louis International Airport (STL)plane OKC - STL
4h 37m$158–732Bus (Greyhound)
cheapest- Take the bus from Oklahoma City Bus Station to St Louis Bus Stationbus Greyhound US1210
9h 20m$90–140Train (Amtrak)
- Take the train from Oklahoma City to Fort Worthtrain Heartland Flyer
- Take the train from Fort Worth to St. Louistrain Texas Eagle
22h 9m$513–824Drive 498 mi
- Drive from Oklahoma City to St. Louiscar 498 mi
7h 59m$91–132Taxi to Stillwater Regional Airport, fly
- Take the taxi from Oklahoma City to Stillwater Regional Airport (SWO)taxi
- Fly from Stillwater Regional Airport (SWO) to Lambert–St. Louis International Airport (STL)plane SWO - STL
6h 29m$250–727
Oklahoma City to St. Louis by bus (Greyhound)
Comparing Your Travel Options
The cheapest way to get from Oklahoma City to St. Louis is to bus which costs $90 - $140 and takes 9h 20m.
The fastest way to get from Oklahoma City to St. Louis is to fly which takes 4h 37m and costs $150 - $750.
Yes, there is a direct bus departing from Oklahoma City Bus Station station and arriving at St Louis Bus Station station. Services depart twice daily, and operate every day. The journey takes approximately 9h 20m.
No, there is no direct train from Oklahoma City to St. Louis. However, there are services departing from Oklahoma City and arriving at St. Louis via Fort Worth. The journey, including transfers, takes approximately 22h 9m.
The distance between Oklahoma City and St. Louis is 486 miles. The road distance is 500.9 miles.
The best way to get from Oklahoma City to St. Louis without a car is to bus which takes 9h 20m and costs $90 - $140.
It takes approximately 4h 37m to get from Oklahoma City to St. Louis, including transfers.
Oklahoma City to St. Louis bus services, operated by Greyhound USA, depart from Oklahoma City Bus Station.
Oklahoma City to St. Louis train services, operated by Amtrak, depart from Oklahoma City station.
The best way to get from Oklahoma City to St. Louis is to fly which takes 4h 37m and costs $150 - $750. Alternatively, you can bus, which costs $90 - $140 and takes 9h 20m, you could also train, which costs $500 - $850 and takes 22h 9m.
What companies run services between Oklahoma City, OK, USA and St. Louis, MO, USA?
Southwest Airlines, American Airlines, and United Airlines fly from Will Rogers World Airport (OKC) to Lambert–St. Louis International Airport (STL) every 2 hours. Alternatively, Greyhound USA operates a bus from Oklahoma City Bus Station to St Louis Bus Station twice daily. Tickets cost $90–140 and the journey takes 9h 20m.
- Website
- southwest.com
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Dallas
- Ave. Duration
- 4h 13m
- When
- Every day
- Estimated price
- $130–700
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Chicago Midway
- Ave. Duration
- 4h 15m
- When
- Monday, Thursday, and Friday
- Estimated price
- $150–800
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Houston Hobby Apt
- Ave. Duration
- 4h 22m
- When
- Tuesday to Friday
- Estimated price
- $170–850
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Austin
- Ave. Duration
- 4h 35m
- When
- Monday, Thursday, and Friday
- Estimated price
- $160–850
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Denver
- Ave. Duration
- 4h 40m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- $180–900
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Nashville
- Ave. Duration
- 4h 47m
- When
- Monday, Thursday, Friday, and Saturday
- Estimated price
- $140–750
- Website
- aa.com
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Dallas/Ft.Worth
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- $130–700
Flights from Stillwater Regional Airport to Lambert–St. Louis International Airport via Dallas/Ft.Worth
- Ave. Duration
- 5h 17m
- When
- Tuesday, Thursday, Friday, and Saturday
- Estimated price
- $100–550
- Website
- united.com
Flights from Will Rogers World Airport to Lambert–St. Louis International Airport via Houston
- Ave. Duration
- 4h 57m
- When
- Every day
- Estimated price
- $160–850
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Oklahoma City to Fort Worth
- Ave. Duration
- 4h 2m
- Frequency
- Once daily
- Estimated price
- $110–180
- Website
- Amtrak
Train from Fort Worth to St. Louis
- Ave. Duration
- 17h 7m
- Frequency
- Once daily
- Estimated price
- $400–650
- Website
- Amtrak
Rome2Rio's guide to Greyhound USA
Contact DetailsContact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from Oklahoma City Bus Station to St Louis Bus Station
- Ave. Duration
- 9h 20m
- Frequency
- Twice daily
- Estimated price
- $90–140
- Website
- Greyhound
- Ave. Duration
- 1h 14m
- Estimated price
- $140–180
Yellow Cab Co.
- Phone
- +1 405 232 6161
Airport Express
- Phone
- +1 877 688 3311
- Website
- airportexpressokc.com
Thunder Cab
- Phone
- +1 405 600 6161
OKC Express Cab
- Phone
- +1 405 340 3400
Superior Taxi
- Phone
- +1 405 205 0925
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
Need to know: Greyhound
Read the travel guide
Why you should take the train in the US
Read the travel guide
Booking & Getting There
Oklahoma City to St. Louis bus services, operated by Greyhound USA, arrive at St Louis Bus Station.
Oklahoma City to St. Louis train services, operated by Amtrak, arrive at Fort Worth station.
Yes, the driving distance between Oklahoma City to St. Louis is 501 miles. It takes approximately 7h 59m to drive from Oklahoma City to St. Louis.
Book your Oklahoma City to St. Louis train tickets online with Omio.
Book your Oklahoma City to St. Louis bus tickets online with Omio and FlixBus.
There are 570+ hotels available in St. Louis.






