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


2h 43m • 2 changes


2h 53m • 2 changes
Arrives next day


3h 8m • 2 changes
Arrives next day


7h 20m • 2 changes


3h • 2 changes


2h 53m • 2 changes


2h 53m • 2 changes


2h 53m • 2 changes


2h 11m • 2 changes


2h 46m • 2 changes


2h 36m • 2 changes


3h 3m • 2 changes


2h 11m • 2 changes


2h 46m • 2 changes


2h 36m • 2 changes


3h 3m • 2 changes


2h 11m • 2 changes


2h 46m • 2 changes


2h 36m • 2 changes


3h 3m • 2 changes
Want to know about travelling from Salem to Worcester? 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 Worcester. However, there are services departing from Salem station and arriving at Worcester station via North Station station. The journey, including transfers, takes approximately 3h 8m.
Salem to Worcester train services, operated by MBTA, depart from Salem station.
Salem to Worcester train services, operated by MBTA, arrive at Worcester station.
The distance between Salem and Worcester is 79.7 km. The road distance is 99 km.
You can take a train from Salem to Worcester via North Station, North Station, Kenmore, and Lansdowne in around 3h 15m.