The average bus between Salem and Needham takes 3h 50m and the fastest bus takes 2h 28m. 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:17 PM which arrives into Needham at 7:41 AM. All services require a transfer at Congress St @ Haymarket Sta and take an average of 3h 50m. The schedules shown below are for the next available departures.


2h 41m • 2 changes


2h 37m • 2 changes


3h 10m • 2 changes


3h 9m • 2 changes


2h 41m • 2 changes


2h 37m • 2 changes


3h 10m • 2 changes


3h 9m • 2 changes


2h 41m • 2 changes


2h 37m • 2 changes


3h 10m • 2 changes


3h 9m • 2 changes
Want 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 50m.
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, Federal St @ Franklin St, Galen St @ Water St, and Watertown Sq Terminal in around 3h 27m.