The average bus between Salem and Rochester takes 11h 5m and the fastest bus takes 8h 33m. There is at least one bus per day from Salem to Rochester. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run once daily between Salem and Rochester. The earliest departure is at 5:12 PM in the evening, and the last departure from Salem is at 11:17 PM which arrives into Rochester at 7:50 AM. All services require a transfer at Surface Rd @ Hanover St and take an average of 11h 5m. The schedules shown below are for the next available departures.
Arrives next day



13h 38m • 3 changes
Arrives next day



8h 33m • 3 changes
Arrives next day



13h 38m • 3 changes
Arrives next day



8h 33m • 3 changes
Arrives next day



13h 38m • 3 changes
Arrives next day



8h 33m • 3 changes
Want to know about travelling from Salem to Rochester? 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 bus from Salem to Rochester. However, there are services departing from Salem station and arriving at Rochester station via Surface Rd @ Hanover St. The journey, including transfers, takes approximately 11h 5m.
Salem to Rochester bus services, operated by MBTA, depart from North St @ Essex St station.
Salem to Rochester bus services, operated by MBTA, arrive at Portsmouth Bus Stop station.
The distance between Salem and Rochester is 87.5 km. The road distance is 155 km.
You can take a bus from North St @ Essex St to Wakefield St. via Surface Rd @ Hanover St, Boston, Portsmouth Bus Stop, Hanover Station, and Dover Transportation Center in around 6h 4m.