Train from St. Louis to Harrisburg: Tickets & Schedules

Next departures

Next departures for St. Louis to Harrisburg on February 4
Operated byVehicle typeDeparture timeDeparture locationTrip durationArrival timeArrival locationRecommendedPrice and booking link
Amtrak
Gateway Station
Harrisburg, PACheapest
Amtrak
Gateway Station
Harrisburg, PAFastest
Amtrak
Gateway Station
Harrisburg, PANo tags
Amtrak
Gateway Station
Harrisburg, PANo tags
Amtrak
Gateway Station
Harrisburg, PANo tags

Last refresh of the prices: Today at 6:43 PM CST.

Compare 2 ways to go from St. Louis to Harrisburg

We recommend taking the bus

Among the sustainable travel choices, the Bus stands out as a good way to reach Harrisburg. The journey takes about 19 hours 45 minutes, and with fares starting at just $167, it presents an excellent value for a comfortable ride.

3bus per day
19h 45mAverage Duration
1158 kmDistance
29kgCO₂ emissions
Average Price$167 - $310Average Duration19h 45m
29kg CO₂e
Average Price$292 - $1,279Average Duration1d 3h
105kg CO₂e

Frequently asked questions about travelling from St. Louis to Harrisburg by train

Please note that schedules, routes, or operator details shown here may be updated or vary at the time of your trip.

  1. How much is the train ticket from St. Louis to Harrisburg?

    The cheapest train tickets from St. Louis to Harrisburg start at $292. The average price for this train route is around $387. Busbud recommends booking your tickets in advance to increase your chances of getting the lowest possible price.

  2. How long is the train ride from St. Louis to Harrisburg?

    The average train trip from St. Louis to Harrisburg takes 1d 3h and covers 1158 km. The quickest train gets you there in 1d 3h and is operated by Amtrak.

  3. Which train operators serve the St. Louis to Harrisburg route?

    Several major train operators serve this route, with 1 trains available per day.

  4. What are the earliest and latest departure times for the train from St. Louis to Harrisburg?

    The earliest train from St. Louis to Harrisburg departs at 8:10am. The latest train departs at 8:10am.

Find cheapest prices for trains

Price is for a one-way ticket for one passenger and based on past searches.

Best price found
01-31
No data
02-01
$1,605
Today
No data
02-03
No data
02-04
$342
02-05
No data
02-06
No data
02-07
No data
busbud logoThe cheapest trip from St. Louis to Harrisburg was searched and found on Feb 4, 2026 with a price of $342

To save money and be sure you have the best seat, it's a good idea to buy your train tickets from St. Louis to Harrisburg, as early as possible.

You can expect to pay from $342 to $1,647 for a train ticket from St. Louis to Harrisburg based on the last 2 days. You can expect to find the cheapest price for the trip at $342 which is on 2026-02-04.

People from around the world trust Busbud