The average train between Salem and Philadelphia takes 7h 1m and the fastest train takes 6h 12m. There is a train service every few hours from Salem to Philadelphia. 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 hourly between Salem and Philadelphia. The earliest departure is at 5:20 AM in the morning, and the last departure from Salem is at 11:10 PM which arrives into Philadelphia at 10:08 AM. All services require a transfer at North Station and take an average of 7h 1m. The schedules shown below are for the next available departures.


7h 2m • 2 changes


7h 20m • 2 changes
Arrives next day


6h 59m • 2 changes
Arrives next day


7h 12m • 2 changes


6h 56m • 2 changes


6h 51m • 2 changes


6h 52m • 2 changes


6h 52m • 2 changes


6h 56m • 2 changes


6h 51m • 2 changes


6h 52m • 2 changes


6h 52m • 2 changes


6h 36m • 2 changes


6h 25m • 2 changes


6h 16m • 2 changes


6h 57m • 2 changes


6h 36m • 2 changes


6h 25m • 2 changes


6h 16m • 2 changes


6h 57m • 2 changes
Want to know about travelling from Salem to Philadelphia? 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 Salem to Philadelphia. However, there are services departing from Salem station and arriving at Philadelphia station via 30th Street Station station. The journey, including transfers, takes approximately 7h 1m.
Salem to Philadelphia train services, operated by MBTA, depart from Boston station.
Salem to Philadelphia train services, operated by MBTA, arrive at 30th Street Station.
The distance between Salem and Philadelphia is 456.8 km. The road distance is 546 km.
Amtrak operates a train from Boston to 30th Street Station every 3 hours. Tickets cost $100–210 and the journey takes 5h 47m. Amtrak Acela also services this route every 4 hours.