There are 5 ways to get from St. Louis to Oklahoma City by plane, bus (Greyhound), train (Amtrak), or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Will Rogers World Airport
best- Fly from Lambert–St. Louis International Airport (STL) to Will Rogers World Airport (OKC)plane STL - OKC
5h 35m$160–738Bus
cheapest- Take the bus from St Louis Bus Station to Oklahoma City Bus Stationbus Greyhound US1210 / ...
9h 40m$80–160Train (Amtrak)
- Take the train from St. Louis to Fort Worthtrain Texas Eagle
- Take the train from Fort Worth to Oklahoma Citytrain Heartland Flyer
22h 37m$306–622Drive 497.6 mi
- Drive from St. Louis to Oklahoma Citycar 497.6 mi
7h 59m$91–132Fly to Stillwater Regional Airport, drive
- Fly from Lambert–St. Louis International Airport (STL) to Stillwater Regional Airport (SWO)plane STL - SWO
- Drive from Stillwater Regional Airport (SWO) to Oklahoma Citycar
7h 38m$114–570
St. Louis to Oklahoma City by bus
Questions & Answers
The cheapest way to get from St. Louis to Oklahoma City is to bus which costs $80 - $160 and takes 9h 40m.
The fastest way to get from St. Louis to Oklahoma City is to fly which takes 5h 35m and costs $160 - $750.
Yes, there is a direct bus departing from St Louis Bus Station station and arriving at Oklahoma City Bus Station station. Services depart three times a day, and operate every day. The journey takes approximately 9h 40m.
No, there is no direct train from St. Louis to Oklahoma City. However, there are services departing from St. Louis and arriving at Oklahoma City via Fort Worth. The journey, including transfers, takes approximately 22h 37m.
The distance between St. Louis and Oklahoma City is 486 miles. The road distance is 500.5 miles.
The best way to get from St. Louis to Oklahoma City without a car is to bus which takes 9h 40m and costs $80 - $160.
It takes approximately 5h 35m to get from St. Louis to Oklahoma City, including transfers.
St. Louis to Oklahoma City bus services, operated by Greyhound-us, depart from St Louis Bus Station.
St. Louis to Oklahoma City train services, operated by Amtrak, depart from St. Louis station.
The best way to get from St. Louis to Oklahoma City is to fly which takes 5h 35m and costs $160 - $750. Alternatively, you can bus, which costs $80 - $160 and takes 9h 40m, you could also train, which costs $300 - $650 and takes 22h 37m.
What companies run services between St. Louis, MO, USA and Oklahoma City, OK, USA?
Southwest Airlines, American Airlines, and Delta fly from Lambert–St. Louis International Airport (STL) to Will Rogers World Airport (OKC) every 2 hours. Alternatively, Greyhound-us operates a bus from St Louis Bus Station to Oklahoma City Bus Station 3 times a day, and the journey takes 9h 40m. Greyhound USA also services this route twice daily.
- Website
- southwest.com
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Dallas
- Ave. Duration
- 4h 49m
- When
- Every day
- Estimated price
- $130–700
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Chicago Midway
- Ave. Duration
- 5h 8m
- When
- Monday to Wednesday
- Estimated price
- $150–750
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Austin
- Ave. Duration
- 4h 37m
- When
- Sunday, Monday, Thursday, and Friday
- Estimated price
- $170–800
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Houston Hobby Apt
- Ave. Duration
- 4h 16m
- When
- Sunday, Monday, Thursday, and Friday
- Estimated price
- $170–800
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Nashville
- Ave. Duration
- 5h 55m
- When
- Tuesday and Wednesday
- Estimated price
- $150–750
- Website
- aa.com
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Dallas/Ft.Worth
- Ave. Duration
- 4h 44m
- When
- Every day
- Estimated price
- $130–700
Flights from Lambert–St. Louis International Airport to Stillwater Regional Airport via Dallas/Ft.Worth
- Ave. Duration
- 5h 53m
- When
- Every day
- Estimated price
- $100–550
- Website
- delta.com
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Minneapolis
- Ave. Duration
- 4h 47m
- When
- Every day
- Estimated price
- $180–800
Flights from Lambert–St. Louis International Airport to Will Rogers World Airport via Atlanta
- Ave. Duration
- 5h 23m
- When
- Every day
- Estimated price
- $190–850
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- Website
- amtrak.com
Train from St. Louis to Fort Worth
- Ave. Duration
- 17h 35m
- Frequency
- Once daily
- Estimated price
- $240–490
- Website
- https://www.amtrak.com/home.html
Train from Fort Worth to Oklahoma City
- Ave. Duration
- 4h 2m
- Frequency
- Once daily
- Estimated price
- $65–140
- Website
- https://www.amtrak.com/home.html
- Website
- greyhound.com
Bus from St Louis Bus Station to Oklahoma City Bus Station
- Ave. Duration
- 9h 40m
- Frequency
- 3 times a day
- Schedules at
- greyhound.com
Rome2Rio's guide to Greyhound USA
Contact DetailsContact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- greyhound.com
Bus from St Louis Bus Station to Oklahoma City Bus Station
- Ave. Duration
- 9h 40m
- Frequency
- Twice daily
- Estimated price
- $80–160
- Website
- https://www.greyhound.com/
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
More Questions & Answers
St. Louis to Oklahoma City bus services, operated by Greyhound-us, arrive at Oklahoma City Bus Station.
St. Louis to Oklahoma City train services, operated by Amtrak, arrive at Fort Worth station.
Yes, the driving distance between St. Louis to Oklahoma City is 500 miles. It takes approximately 7h 59m to drive from St. Louis to Oklahoma City.
Book your St. Louis to Oklahoma City train tickets online with Omio.
Book your St. Louis to Oklahoma City bus tickets online with Omio and FlixBus.
There are 414+ hotels available in Oklahoma City.








