There are 6 ways to get from Salem to Canton by train, bus, car, or taxi
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Salem to North Stationtrain Newburyport/Rockport Line
- Take the train from Ruggles to Canton Junctiontrain Providence/Stoughton Line
1h 33m$8–20Line 450 bus, line 28 bus
cheapest- Take the bus from North St @ Essex St to Congress St @ Haymarket Stabus 450
- Take the bus from Nubian to Mattapanbus 28 / ...
3h 21m$3–9Line 450 bus, train
- Take the bus from North St @ Essex St to Surface Rd @ Hanover Stbus 450
- Take the train from Back Bay to Canton Junctiontrain Providence/Stoughton Line
1h 57m$7–15Drive 30.4 mi
- Drive from Salem to Cantoncar 30.4 mi
54 min$6–8Taxi
- Take the taxi from Salem to Cantontaxi 30.4 mi
54 min$100–130Train, bus
- Take the train from Salem to Chelseatrain
- Take the bus from Chelsea to South Stationbus Sl3
- Take the train from South Station to Canton Centertrain
2h 21m$5–22
Salem to Canton by train and subway
Questions & Answers
The cheapest way to get from Salem to Canton is to drive which costs $5 - $8 and takes 54 min.
The fastest way to get from Salem to Canton is to drive which takes 54 min and costs $5 - $8.
No, there is no direct bus from Salem to Canton. However, there are services departing from North St @ Essex St and arriving at Washington St from Endicott St to Maple St via Temple Pl @ Washington St, Nubian and Mattapan. The journey, including transfers, takes approximately 3h 21m.
No, there is no direct train from Salem to Canton. However, there are services departing from Salem and arriving at Canton Junction via North Station and Ruggles. The journey, including transfers, takes approximately 1h 33m.
The distance between Salem and Canton is 33 miles. The road distance is 30.6 miles.
The best way to get from Salem to Canton without a car is to train which takes 1h 33m and costs $8 - $20.
It takes approximately 1h 33m to get from Salem to Canton, including transfers.
Salem to Canton bus services, operated by MBTA, depart from North St @ Essex St station.
Salem to Canton train services, operated by MBTA, depart from Salem station.
The best way to get from Salem to Canton is to train which takes 1h 33m and costs $8 - $20. Alternatively, you can line 450 bus and line 28 bus, which costs $2 - $10 and takes 3h 21m.
What companies run services between Salem, MA, USA and Canton, MA, USA?
You can take a train from Salem to Canton Junction via North Station, North Station, Ruggles, and Ruggles in around 1h 33m. Alternatively, you can take a bus from North St @ Essex St to Washington St from Endicott St to Maple St via Congress St @ Haymarket Sta, Temple Pl @ Washington St, Nubian, and Mattapan in around 3h 21m.
Train from Salem to North Station
- Ave. Duration
- 36 min
- Frequency
- Hourly
- Estimated price
- $3–9
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
- Adult
- $3–9
Train from Ruggles to Canton Junction
- Ave. Duration
- 17 min
- Frequency
- Hourly
- Estimated price
- $2–8
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
- Adult
- $2–8
Train from Back Bay to Canton Junction
- Ave. Duration
- 20 min
- Frequency
- Hourly
- Estimated price
- $2–8
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
- Adult
- $2–8
Train from Salem to Chelsea
- Ave. Duration
- 20 min
- Frequency
- Hourly
- Estimated price
- $2–8
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
- Adult
- $2–8
Train from South Station to Canton Center
- Ave. Duration
- 29 min
- Frequency
- Every 2 hours
- Estimated price
- $2–9
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
- Adult
- $2–9
Bus from North St @ Essex St to Surface Rd @ Hanover St
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- $1–5
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
Bus from Chelsea to South Station
- Ave. Duration
- 26 min
- Frequency
- Every 15 minutes
- Estimated price
- $1–5
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
Bus from North St @ Essex St to Congress St @ Haymarket Sta
- Ave. Duration
- 1h 2m
- Frequency
- Hourly
- Estimated price
- $1–5
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
Bus from Nubian to Mattapan
- Ave. Duration
- 40 min
- Frequency
- Every 15 minutes
- Website
- Massachusetts Bay Transportation Authority
- Website
- MBTA: World Cup 2026
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Travel Insider: Top Japan travel tips by Beatrix Holland, South Korea: Travelling from Seoul to Busan , and 4 of the smartest ways to explore Australia - to help you get the most out of your next trip.
More Questions & Answers
Salem to Canton bus services, operated by MBTA, arrive at Congress St @ Haymarket Sta station.
Salem to Canton train services, operated by MBTA, arrive at North Station.
Yes, the driving distance between Salem to Canton is 31 miles. It takes approximately 54 min to drive from Salem to Canton.
There are 1155+ hotels available in Canton.





