There are 10 ways to get from Rome to Milan by train (Trenitalia), bus, night train, car, rideshare, plane, or train
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 Roma Termini to Milano CentraleFr / ...
3h 8m€45–120Bus
cheapest- Take the bus from Roma, Autostazione Tiburtina to MilanItabus
8h 13m€13–69Bus via Florence
- Take the bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station510 / ...
- Take the bus from Florence Villa Constanza Bus Station to Milano, San Donato M3N528 / ...
7h 40m€18–74Night train
- Take the night train from Roma Termini to Milano P.GaribaldiIni
7h€50–75Drive 570.4 km
- Drive from Rome to Milan570.4 km
5h 15m€88–128Bus #2
- Take the bus from Roma, Autostazione Tiburtina to Milano, San Donato M3N539 / ...
8h 40m€18–55Rideshare
- Take the rideshare from Rome to Milan571.4 km
6h 57m€29–32Fly Fiumicino International Airport to Milan Linate Airport
- Fly from Fiumicino International Airport (FCO) to Milan Linate Airport (LIN)FCO - LIN
2h 55m€50–168Fly Fiumicino International Airport to Milano Malpensa Airport, train
- Fly from Fiumicino International Airport (FCO) to Milano Malpensa Airport (MXP)FCO - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
3h 48m€48–170Train to Naples Airport, fly to Milan Linate Airport
- Take the train from Roma Termini to Napoli Centrale
- Fly from Naples Airport (NAP) to Milan Linate Airport (LIN)NAP - LIN
3h 51m€68–234
Rome to Milan by train
Questions & Answers
The cheapest way to get from Rome to Milan is to rideshare which costs €29 - €32 and takes 6h 57m.
The fastest way to get from Rome to Milan is to fly which takes 2h 55m and costs €50 - €170.
Yes, there is a direct bus departing from Roma, Autostazione Tiburtina and arriving at Milano, San Donato M3. Services depart four times a day, and operate every day. The journey takes approximately 8h 40m.
Yes, there is a direct train departing from Roma Termini and arriving at Milano Centrale. Services depart every 30 minutes, and operate every day. The journey takes approximately 3h 8m.
The distance between Rome and Milan is 563 km. The road distance is 570.4 km.
The best way to get from Rome to Milan without a car is to train which takes 3h 8m and costs €45 - €120.
The train from Rome Termini to Milan Centrale takes 3h 8m including transfers and departs every 30 minutes.
Rome to Milan bus services, operated by FlixBus, depart from Roma, Autostazione Tiburtina station.
Rome to Milan train services, operated by Trenitalia Frecce, depart from Roma Termini station.
The best way to get from Rome to Milan is to train which takes 3h 8m and costs €45 - €120. Alternatively, you can bus via Florence, which costs €18 - €75 and takes 7h 40m, you could also fly, which costs €50 - €170 and takes 2h 55m.
What companies run services between Rome, Italy and Milan, Italy?
Trenitalia Frecce operates a train from Roma Termini to Milano Centrale every 30 minutes. Tickets cost €45–110 and the journey takes 3h 8m. ItaloTreno also services this route every 3 hours. Alternatively, you can take a bus from Roma, Autostazione Tiburtina to Milano, San Donato M3 via Florence Villa Constanza Bus Station in around 7h 40m.
- Website
- ita-airways.com
Flights from Fiumicino International Airport to Milan Linate Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €45–150
Flights from Fiumicino International Airport to Milan Linate Airport via Naples Airport
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- €45–150
Flights from Naples Airport to Milan Linate Airport
- Ave. Duration
- 1h 21m
- When
- Every day
- Estimated price
- €40–170
Flights from Naples Airport to Milan Linate Airport via Fiumicino International Airport
- Ave. Duration
- 3h 13m
- When
- Every day
- Estimated price
- €40–170
- Website
- aeroitalia.com
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €40–250
- Website
- flexflight.dk
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €40–250
- Website
- neosair.it
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Monday to Wednesday
- Estimated price
- €160–450
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Roma Termini to Milano Centrale
- Ave. Duration
- 3h 8m
- Frequency
- Every 30 minutes
- Estimated price
- €45–110
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Roma Termini to Milano Centrale
- Ave. Duration
- 2h 52m
- Frequency
- Every 3 hours
- Estimated price
- €45–120
- Website
- https://www.italotreno.it/en
Train from Roma Termini to Napoli Centrale
- Ave. Duration
- 1h 3m
- Frequency
- Hourly
- Estimated price
- €21–60
- Website
- https://www.italotreno.it/en
- Phone
- 06 3000
- Website
- trenitalia.com
Night train from Roma Termini to Milano P.Garibaldi
- Ave. Duration
- 7h
- Frequency
- Once a week
- Estimated price
- €50–75
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €15
- Website
- https://www.malpensaexpress.it/en/
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 3h 15m
- Frequency
- Hourly
- Estimated price
- €8–25
- Website
- https://www.flixbus.co.uk
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 3h 25m
- Frequency
- Every 3 hours
- Estimated price
- €12–35
- Website
- https://www.flixbus.co.uk
Bus from Roma, Autostazione Tiburtina to Milano, San Donato M3
- Ave. Duration
- 8h 40m
- Frequency
- 4 times a day
- Estimated price
- €18–55
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 4h 30m
- Frequency
- Hourly
- Estimated price
- €8–35
- Website
- https://www.itabus.it/en/home
Bus from Roma, Autostazione Tiburtina to Milan
- Ave. Duration
- 7h 55m
- Frequency
- 5 times a day
- Estimated price
- €12–65
- Website
- https://www.itabus.it/en/home
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 3h 30m
- Frequency
- Once daily
- Estimated price
- €6–20
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +39 080 3112335
- info@marinobus.it
- Website
- marinobus.it
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 3h 15m
- Frequency
- Twice daily
- Estimated price
- €15–40
- Website
- https://marinobus.it/en/
Bus from Roma, Autostazione Tiburtina to Milan
- Ave. Duration
- 7h 25m
- Frequency
- Once daily
- Estimated price
- €29–70
- Website
- https://marinobus.it/en/
- Phone
- (+39) 0923 98.11.20
- Website
- autoservizisalemi.it
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 2h 45m
- Frequency
- 3 times a week
- Estimated price
- €12–18
- Schedules at
- autoservizisalemi.it
Bus from Roma, Autostazione Tiburtina to Milano, San Donato M3
- Ave. Duration
- 6h 55m
- Frequency
- 3 times a week
- Estimated price
- €25–40
- Schedules at
- autoservizisalemi.it
- Phone
- +39 0972 24590
- booking@autolineemoretti.it
- Website
- autolineemoretti.it
Bus from Roma, Autostazione Tiburtina to Florence Villa Constanza Bus Station
- Ave. Duration
- 4h 15m
- Frequency
- 3 times a week
- Estimated price
- €19–22
- Schedules at
- autolineemoretti.it
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Rome to Milan
- Ave. Duration
- 6h 57m
- Frequency
- Every 2 hours
- Estimated price
- €29–32
- Schedules at
- blablacar.com
Want to know more about travelling around Italy
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
5 incredible day trips from Florence by train
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Rome to Milan bus services, operated by FlixBus, arrive at Florence Villa Constanza Bus Station.
Rome to Milan train services, operated by Trenitalia Frecce, arrive at Milano Centrale station.
Yes, the driving distance between Rome to Milan is 570 km. It takes approximately 5h 15m to drive from Rome to Milan.
Book your Rome to Milan train tickets online with Omio.
Book your Rome to Milan bus tickets online with Omio and FlixBus.
There are 13498+ hotels available in Milan.
Check out Blablacar's carpooling service for rideshare options between Rome and Milan. A great option if you don't have a driver's licence or want to avoid public transport.





































