There are 6 ways to get from Milan to Safi by train, plane, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Milano Malpensa Airport, fly to Marrakech, train
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Marrakech (RAK)plane MXP - RAK
- Take the train from Marrakech to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
10h 48mMAD 746–2,798Bus to Il Caravaggio International Airport, fly to Marrakech, train
- Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Stationbus
- Fly from Il Caravaggio International Airport (BGY) to Marrakech (RAK)plane BGY - RAK
- Take the train from Marrakech to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
11h 5mMAD 947–3,805Fly Milan Linate Airport to Marrakech, train
- Fly from Milan Linate Airport (LIN) to Marrakech (RAK)plane LIN - RAK
- Take the train from Marrakech to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
12h 12mMAD 1,420–3,763Train to Milano Malpensa Airport, fly to Mohammed V International Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Mohammed V International Airport (CMN)plane MXP - CMN
- Take the train from Gare Oasis to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
12h 43mMAD 979–4,343Train to Turin Caselle Airport, fly to Marrakech, train
- Take the train from Milano Centrale to Torino Porta di Susatrain
- Fly from Turin Caselle Airport (TRN) to Marrakech (RAK)plane TRN - RAK
- Take the train from Marrakech to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
11h 38mMAD 1,020–3,064Bus to Il Caravaggio International Airport, fly to Mohammed V International Airport, train
- Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Stationbus
- Fly from Il Caravaggio International Airport (BGY) to Mohammed V International Airport (CMN)plane BGY - CMN
- Take the train from Gare Oasis to Ben Guerirtrain
- Take the train from Gare de Ben Guerir to Gare ONCF de Safitrain
12h 45mMAD 1,080–3,450
Milano Malpensa Airport (MXP) to Marrakech (RAK) flights
Questions & Answers
The cheapest way to get from Milan to Safi is to train and fly which costs MAD 700 - MAD 2,800 and takes 10h 48m.
The fastest way to get from Milan to Safi is to train and fly which takes 10h 48m and costs MAD 700 - MAD 2,800.
The distance between Milan and Safi is 2396 km.
It takes approximately 10h 48m to get from Milan to Safi, including transfers.
Safi is 1h behind Milan. It is currently 10:34 PM in Milan and 9:34 PM in Safi.
There are 91+ hotels available in Safi.
What companies run services between Milan, Italy and Safi, Morocco?
There is no direct connection from Milan to Safi. However, you can take the train to Malpensa Aeroporto T1, walk to Milano Malpensa Airport (MXP) airport, fly to Marrakech (RAK), walk to Marrakech Airport, take the line 19 bus to Jardin Menara, take the line 19 bus to Gare Routière de ONCF, walk to Marrakech, take the train to Ben Guerir, then take the train to Gare ONCF de Safi. Alternatively, you can take the bus to Bergamo Airport Bus Station, walk to Il Caravaggio International Airport (BGY) airport, fly to Marrakech (RAK), walk to Marrakech Airport, take the line 19 bus to Jardin Menara, take the line 19 bus to Gare Routière de ONCF, walk to Marrakech, take the train to Ben Guerir, then take the train to Gare ONCF de Safi.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Marrakech
- Ave. Duration
- 3h 25m
- When
- Monday, Tuesday, Thursday, and Sunday
- Estimated price
- MAD 650–2,000
Flights from Milano Malpensa Airport to Marrakech via Alicante–Elche
- Ave. Duration
- 5h 10m
- When
- Thursday
- Estimated price
- MAD 650–2,000
Flights from Milano Malpensa Airport to Marrakech via Sevilla
- Ave. Duration
- 5h 40m
- When
- Monday
- Estimated price
- MAD 650–2,000
Flights from Il Caravaggio International Airport to Marrakech
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- MAD 800–3,000
Flights from Il Caravaggio International Airport to Marrakech via Alicante–Elche
- Ave. Duration
- 5h
- When
- Monday
- Estimated price
- MAD 800–3,000
Flights from Il Caravaggio International Airport to Marrakech via Valencia
- Ave. Duration
- 6h 55m
- When
- Wednesday, Friday, and Saturday
- Estimated price
- MAD 800–3,000
Flights from Milan Linate Airport to Marrakech via Palma Mallorca
- Ave. Duration
- 5h 10m
- When
- Thursday and Sunday
- Estimated price
- MAD 800–3,000
Flights from Milan Linate Airport to Marrakech via Barcelona
- Ave. Duration
- 5h 30m
- When
- Monday and Wednesday
- Estimated price
- MAD 800–3,000
Flights from Turin Caselle Airport to Marrakech
- Ave. Duration
- 3h 15m
- When
- Tuesday, Thursday, Friday, and Sunday
- Estimated price
- MAD 600–1,400
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Marrakech
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- MAD 700–2,300
- Website
- royalairmaroc.com
Flights from Milano Malpensa Airport to Marrakech via Mohammed V International Airport
- Ave. Duration
- 5h 40m
- When
- Every day
- Estimated price
- MAD 2,100–4,600
Flights from Milan Linate Airport to Marrakech via Paris Orly
- Ave. Duration
- 5h 40m
- When
- Monday to Saturday
- Estimated price
- MAD 1,400–6,000
Flights from Milano Malpensa Airport to Mohammed V International Airport
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- MAD 600–2,500
- Website
- iberia.com
Flights from Milan Linate Airport to Marrakech via Madrid
- Ave. Duration
- 5h 50m
- When
- Every day
- Estimated price
- MAD 1,000–6,000
Flights from Milano Malpensa Airport to Mohammed V International Airport via Barcelona
- Ave. Duration
- 5h 20m
- When
- Every day
- Estimated price
- MAD 600–2,500
Flights from Turin Caselle Airport to Marrakech via Barcelona
- Ave. Duration
- 7h 20m
- When
- Wednesday
- Estimated price
- MAD 800–3,300
- Website
- vueling.com
Flights from Milan Linate Airport to Marrakech via Madrid
- Ave. Duration
- 5h 50m
- When
- Every day
- Estimated price
- MAD 1,000–6,000
Flights from Turin Caselle Airport to Marrakech via Barcelona
- Ave. Duration
- 7h 20m
- When
- Wednesday
- Estimated price
- MAD 800–3,300
- Website
- transavia.com
Flights from Milan Linate Airport to Marrakech via Paris Orly
- Ave. Duration
- 6h 15m
- When
- Monday to Wednesday
- Estimated price
- MAD 1,000–4,500
- Website
- airarabia.com
Flights from Il Caravaggio International Airport to Mohammed V International Airport
- Ave. Duration
- 3h 5m
- When
- Wednesday to Sunday
- Estimated price
- MAD 900–2,600
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Marrakech
- Ave. Duration
- 3h 15m
- When
- Monday, Wednesday, and Friday
- Estimated price
- MAD 450–1,400
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- MAD 45–60
- Website
- https://www.trenord.it/en/
- Phone
- 2255
- communication.digitale@oncf.ma
- Website
- oncf.ma
Train from Marrakech to Ben Guerir
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- MAD 30–60
- Schedules at
- oncf-voyages.ma
- Book at
- oncf.ma
- 2nd Class
- MAD 30–45
- 1st Class
- MAD 40–60
Train from Gare de Ben Guerir to Gare ONCF de Safi
- Ave. Duration
- 2h 2m
- Frequency
- Twice daily
- Estimated price
- MAD 55–120
- Schedules at
- oncf-voyages.ma
- Book at
- oncf.ma
- 2nd Class
- MAD 55–80
- 1st Class
- MAD 85–120
Train from Gare Oasis to Ben Guerir
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- MAD 65–140
- Schedules at
- oncf-voyages.ma
- Book at
- oncf.ma
- 2nd Class
- MAD 65–95
- 1st Class
- MAD 100–140
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Torino Porta di Susa
- Ave. Duration
- 48 min
- Frequency
- Hourly
- Estimated price
- MAD 190–390
- Website
- https://www.italotreno.it/en
- info@flibco.com
- Website
- flibco.com
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- MAD 85–220
- Website
- https://www.flibco.com/en
- customerservices@terravision.eu
- Website
- terravision.eu
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- MAD 50–270
- Website
- https://www.terravision.eu/
- Phone
- +39 02 3008 9000
- mail@autostradale.it
- Website
- autostradale.it
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 1h
- Frequency
- Every 30 minutes
- Estimated price
- MAD 45–85
- Website
- https://autostradale.it/?lang=en-GB
Want to know more about travelling around Morocco
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Getting to Milan from the airport
Read the travel guide


































