The average train between Harrisburg, Pa and Yardley takes 3h 45m and the fastest train takes 3h 17m. The train service runs several times per day from Harrisburg, Pa to Yardley. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 2 hours between Harrisburg, Pa and Yardley. The earliest departure is at 5:00 AM in the morning, and the last departure from Harrisburg, Pa is at 9:15 PM which arrives into Yardley at 1:04 AM. All services require a transfer at 30Th Street Station and take an average of 3h 45m. The schedules shown below are for the next available departures.


3h 34m • 2 changes


3h 39m • 2 changes


3h 54m • 2 changes


3h 39m • 2 changes


3h 34m • 2 changes


3h 39m • 2 changes


3h 54m • 2 changes


3h 39m • 2 changes


3h 34m • 2 changes


3h 39m • 2 changes


3h 54m • 2 changes


3h 39m • 2 changes


3h 34m • 2 changes


3h 39m • 2 changes


3h 54m • 2 changes


3h 39m • 2 changes
Want to know about travelling from Harrisburg, Pa to Yardley? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Harrisburg, Pa to Yardley. However, there are services departing from Harrisburg, Pa station and arriving at Yardley station via 30th Street Station station. The journey, including transfers, takes approximately 3h 45m.
Harrisburg, Pa to Yardley train services, operated by Amtrak, depart from Harrisburg station.
Harrisburg, Pa to Yardley train services, operated by Amtrak, arrive at Yardley station.
The distance between Harrisburg, Pa and Yardley is 172.5 km. The road distance is 216 km.
You can take a train from Harrisburg to Yardley via 30Th Street Station, Drexel Station at 30th St, 11th St, and Jefferson Station in around 3h 33m.