There are 4 ways to get from Safi to Marrakesh 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 Gare ONCF de Safi to Gare de Ben Guerirtrain
- Take the train from Ben Guerir to Marrakechtrain
3h 32mMAD 86–170Bus
- Take the bus from Safi to Essaouirabus
- Take the bus from Essaouira to Marrakeshbus
7hMAD 164–248Drive 153.3 km
- Drive from Safi to Marrakeshcar 153.3 km
2h 40mMAD 228–329Taxi
- Take the taxi from Safi to Marrakeshtaxi 153.3 km
2h 40mMAD 1,300–1,700
Safi to Marrakesh by train
Questions & Answers
The cheapest way to get from Safi to Marrakesh is to train which costs MAD 85 - MAD 170 and takes 3h 32m.
The fastest way to get from Safi to Marrakesh is to drive which takes 2h 40m and costs MAD 220 - MAD 330.
No, there is no direct bus from Safi to Marrakesh. However, there are services departing from Safi and arriving at Marrakesh via Essaouira. The journey, including transfers, takes approximately 7h.
No, there is no direct train from Safi to Marrakesh. However, there are services departing from Gare ONCF de Safi and arriving at Marrakech via Ben Guerir. The journey, including transfers, takes approximately 3h 32m.
The distance between Safi and Marrakesh is 211 km. The road distance is 153.3 km.
The best way to get from Safi to Marrakesh without a car is to train which takes 3h 32m and costs MAD 85 - MAD 170.
It takes approximately 3h 32m to get from Safi to Marrakesh, including transfers.
Safi to Marrakesh bus services, operated by CTM, depart from Safi station.
Safi to Marrakesh train services, operated by Moroccan Railways (ONCF), depart from Gare ONCF de Safi station.
The best way to get from Safi to Marrakesh is to train which takes 3h 32m and costs MAD 85 - MAD 170. Alternatively, you can bus, which costs MAD 160 - MAD 250 and takes 7h.
What companies run services between Safi, Morocco and Marrakesh, Morocco?
You can take a train from Gare ONCF de Safi to Marrakech via Ben Guerir in around 3h 32m. Alternatively, you can take a bus from Safi to Marrakesh via Essaouira in around 7h.
- Phone
- 2255
- [email protected]
- Website
- oncf-voyages.ma
Train from Gare ONCF de Safi to Gare de Ben Guerir
- Ave. Duration
- 2h 2m
- Frequency
- Once daily
- Estimated price
- MAD 55–110
- Schedules at
- oncf-voyages.ma
- Book at
- oncf-voyages.ma
- 2nd Class
- MAD 55–80
- 1st Class
- MAD 80–110
Train from Ben Guerir to Marrakech
- Ave. Duration
- 43 min
- Frequency
- Hourly
- Estimated price
- MAD 30–60
- Schedules at
- oncf-voyages.ma
- Book at
- oncf-voyages.ma
- 2nd Class
- MAD 30–45
- 1st Class
- MAD 40–60
- Phone
- 0 800 0900 30
- [email protected]
- Website
- ctm.ma
Bus from Safi to Essaouira
- Ave. Duration
- 3h
- Frequency
- 4 times a day
- Estimated price
- MAD 80–120
- Schedules at
- ctm.ma
- Ave. Duration
- 2h 40m
- Estimated price
- MAD 1,300–1,700
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 Travelling to the UK: What do I need to know?, Heading to Europe? Read this before you buy a Eurail Pass, and Is ride-sharing platform BlaBlaCar right for you? - to help you get the most out of your next trip.
More Questions & Answers
Safi to Marrakesh bus services, operated by CTM, arrive at Essaouira station.
Safi to Marrakesh train services, operated by Moroccan Railways (ONCF), arrive at Gare de Ben Guerir station.
Yes, the driving distance between Safi to Marrakesh is 153 km. It takes approximately 2h 40m to drive from Safi to Marrakesh.
There are 10396+ hotels available in Marrakesh.











