The average train between Marrakesh and Safi takes 3h 7m and the fastest train takes 2h 57m. The train service runs several times per day from Marrakesh to Safi. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run twice daily between Marrakesh and Safi. The earliest departure is at 10:50 AM in the morning, and the last departure from Marrakesh is at 7:00 PM which arrives into Safi at 9:57 PM. All services require a transfer, and take on average 3h 7m. The schedules shown below are for the next available departures.
Want to know about travelling from Marrakesh to Safi? 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 train from Marrakesh to Safi. However, there are services departing from Marrakesh station and arriving at Safi station via Ben Guerir. The journey, including transfers, takes approximately 3h 7m.
Marrakesh to Safi train services, operated by Moroccan Railways (ONCF), depart from Marrakech station.
Marrakesh to Safi train services, operated by Moroccan Railways (ONCF), arrive at Gare ONCF de Safi station.
The distance between Marrakesh and Safi is 138.2 km. The road distance is 216 km.
You can take a train from Marrakech to Gare ONCF de Safi via Gare de Ben Guerir in around 3h 47m.