The average bus between Salem and Needham takes 3h 53m and the fastest bus takes 2h 29m. The bus service runs several times per day from Salem to Needham. 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 every 2 hours between Salem and Needham. The earliest departure is at 5:31 AM in the morning, and the last departure from Salem is at 11:16 PM which arrives into Needham at 9:52 AM. All services require a transfer at Congress St @ Haymarket Sta and take an average of 3h 53m. The schedules shown below are for the next available departures.


2h 41m • 2 changes

2h 37m • 2 changes

3h 10m • 2 changes

3h 7m • 2 changes

2h 41m • 2 changes

2h 37m • 2 changes

3h 10m • 2 changes

3h 7m • 2 changes

2h 41m • 2 changes

2h 37m • 2 changes

3h 10m • 2 changes

3h 7m • 2 changes

2h 41m • 2 changes

2h 37m • 2 changes

3h 10m • 2 changes

3h 7m • 2 changesWant to know about travelling from Salem to Needham? 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 Needham. However, there are services departing from Salem station and arriving at Needham station via Congress St @ Haymarket Sta. The journey, including transfers, takes approximately 3h 53m.
Salem to Needham bus services, operated by MBTA, depart from North St @ Essex St station.
Salem to Needham bus services, operated by MBTA, arrive at Highland Ave @ May St station.
The distance between Salem and Needham is 38.1 km. The road distance is 54 km.
You can take a bus from North St @ Essex St to Highland Ave @ May St via Congress St @ Haymarket Sta, Otis St @ Summer St, Galen St @ Water St, and Watertown Sq Terminal in around 3h 25m.