There are 11 ways to get from Rome to Milan by train, bus, night train, rideshare, car or plane

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Train  •  3h 10m

  1. Take the train from Roma Termini to Milano Centrale Fr / ...

30€ - 120€

Cheapest option

Bus  •  8h 5m

  1. Take the bus from Roma - Autostazione Tiburtina to Milano - Autostazione San Donato Baltour / ...

24€ - 37€

9 alternative options

Bus via Duomo M3  •  8h 12m

  1. Take the bus from Rome, Rome Tiburtina Bus station to Milan, Milan N528 / ...

31€ - 36€

Night train  •  7h

  1. Take the night train from Roma Tiburtina to Milano P.Garibaldi Ini

50€ - 75€

Rideshare  •  6h 57m

  1. Take the rideshare from Rome to Milan 575.8 km

29€ - 32€

Drive  •  5h 21m

  1. Drive from Rome to Milan 574.7 km

75€ - 120€

Fly to Milan Linate  •  3h 8m

  1. Fly from Rome (FCO) to Milan Linate (LIN) FCO - LIN

48€ - 187€

Fly to Milan Malpensa  •  3h 37m

  1. Fly from Rome (FCO) to Milan Malpensa (MXP) FCO - MXP

48€ - 221€

Fly to Milan Bergamo  •  3h 55m

  1. Fly from Rome (FCO) to Milan Bergamo (BGY) FCO - BGY

47€ - 215€

Fly to Turin, train  •  4h 42m

  1. Fly from Rome (FCO) to Turin (TRN) FCO - TRN
  2. Take the train from Torino Porta Susa to Milano Centrale

68€ - 390€

Fly to Verona, train  •  4h 39m

  1. Fly from Rome (FCO) to Verona (VRN) FCO - VRN
  2. Take the train from Verona Porta Nuova to Milano Centrale

72€ - 526€

Coronavirus (COVID-19) in Italy

There is widespread community transmission globally.
Some travel restrictions are being lifted in Italy. For the latest travel status, please check the official page for Italy.

For travel planning advice, please refer to our Rome2rio Coronavirus information page .
For the latest travel status, we recommend checking the official page for Italy.

Coronavirus (COVID-19) Travel Advice

Some border closures are in place for Italy due to Coronavirus (COVID-19). Most travel to this country is restricted.

Source Type: Government | Last updated: 4/18/2020

Some domestic travel restrictions began to ease in Italy from 5/18/2020.

Source Type: Government | Last updated: 5/18/2020

International flights leaving Italy are suspended as part of the response to Coronavirus (COVID-19). Restrictions may also be in place for other modes of transport.

Source Type: Government | Last updated: 4/18/2020

Data sourced from: CDC, ACAPS, OXFORD

Questions & Answers

The cheapest way to get from Rome to Milan is to rideshare which costs 29€ - 32€ and takes 6h 57m.

More details

The quickest way to get from Rome to Milan is to fly which costs 45€ - 190€ and takes 3h 8m.

More details

No, there is no direct bus from Rome to Milan. However, there are services departing from Roma - Autostazione Tiburtina and arriving at cavallotti via san donato m3. The journey, including transfers, takes approximately 8h 5m.

More details

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 10m.

More details

The distance between Rome and Milan is 477 km. The road distance is 574.7 km.

Get driving directions

The best way to get from Rome to Milan without a car is to train which takes 3h 10m and costs 30€ - 120€.

More details

The train from Roma Termini to Milano Centrale takes 3h 10m including transfers and departs every 30 minutes.

More details

Rome to Milan bus services, operated by Baltour, depart from Roma - Autostazione Tiburtina station.

More details

Rome to Milan train services, operated by Trenitalia Frecce, depart from Roma Termini station.

More details

The best way to get from Rome to Milan is to train which takes 3h 10m and costs 30€ - 120€. Alternatively, you can bus, which costs 24€ - 40€ and takes 8h 5m, you could also fly, which costs 45€ - 190€ and takes 3h 8m.

Mode details

Map of how to get from Rome to Milan.
Launch map view
  • Distance: 477.3 km
  • Duration: 3h 10m

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 40€ - 120€ and the journey takes 3h 10m. ItaloTreno also services this route hourly. Alternatively, Baltour operates a bus from Roma - Autostazione Tiburtina to Milano - Autostazione San Donato 5 times a day. Tickets cost 23€ - 35€ and the journey takes 7h 15m. Marino Autolinee also services this route once daily.

Airlines
Alitalia
Website
alitalia.com
Flights from Rome to Milan Linate
Ave. Duration
1h 10m
When
Every day
Estimated price
40€ - 150€
Flights from Rome to Milan Linate via Naples
Ave. Duration
3h 5m
When
Every day
Estimated price
40€ - 150€
Flights from Rome to Milan Malpensa
Ave. Duration
1h 12m
When
Every day
Estimated price
45€ - 300€
Flights from Rome to Milan Bergamo
Ave. Duration
1h 15m
When
Every day
Estimated price
60€ - 240€
Flights from Rome to Turin
Ave. Duration
1h 12m
When
Every day
Estimated price
50€ - 330€
Flights from Rome to Verona
Ave. Duration
1h
When
Every day
Estimated price
45€ - 240€
Neos
Website
neosair.it
Flights from Rome to Milan Malpensa
Ave. Duration
1h 12m
When
Tuesday and Friday
Estimated price
25€ - 240€
Flights from Rome to Verona
Ave. Duration
1h 2m
When
Tuesday and Thursday
Estimated price
25€ - 260€
Meridiana
Website
meridiana.it
Flights from Rome to Milan Malpensa
Ave. Duration
1h 20m
When
Every day
Estimated price
25€ - 240€
Ethiopian Airlines
Website
ethiopianairlines.com
Flights from Rome to Milan Malpensa
Ave. Duration
1h 40m
When
Monday, Tuesday, Thursday and Saturday
Estimated price
640€ - 670€
Train operators
Trenitalia Frecce

Trenitalia’s high-speed Frecce trains run on specialised tracks and have a greater level of service and comfort than InterCity and regional trains. There are three types of Frecce trains: Frecciarossa, (the fastest; connects major Italian cities); Frecciargento (mostly connect Rome to other Italian cities); and Frecciabianca (the slowest Frecce trains). Frecciarossa trains offer four classes of service, all with free Wi-Fi: Standard, Premium, Business and Executive. All Frecce tickets include a seat reservation and must be purchased before boarding the train.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Roma Termini to Milano Centrale
Ave. Duration
3h 10m
Frequency
Every 30 minutes
Estimated price
40€ - 120€
Website
Trenitalia Frecce
Super Economy
40€ - 55€
Base Standard
70€ - 95€
Base Premium
85€ - 120€
Train from Torino Porta Susa to Milano Centrale
Ave. Duration
50 min
Frequency
Hourly
Estimated price
14€ - 55€
Website
Trenitalia Frecce
Super Economy
14€ - 19€
Base Standard
30€ - 40€
Base Premium
35€ - 55€
Train from Verona Porta Nuova to Milano Centrale
Ave. Duration
1h 13m
Frequency
Hourly
Estimated price
14€ - 55€
Website
Trenitalia Frecce
Super Economy
14€ - 20€
Base Standard
30€ - 45€
Base Premium
35€ - 55€
ItaloTreno

Private train company Italotreno operates high-speed trains in Italy on the same tracks as Trenitalia. The routes service 21 stations across the country, including popular routes Milan-Florence, Rome-Venice and Bologna-Naples. Choose from four classes of service, all with free Wi-Fi: Smart, Comfort, Prima and Club Executive. Italo also operates Italobus – an integrated train-bus service that takes passengers from the main train stations to other Italian cities.

Contact Details
Phone
+39 060708
Website
italotreno.it
Train from Roma Termini to Milano Centrale
Ave. Duration
3h 15m
Frequency
Hourly
Estimated price
30€ - 90€
Website
Italo Treno
Smart Economy
30€ - 50€
Smart Low Cost
30€ - 45€
Smart Flex
60€ - 90€
Train from Verona Porta Nuova to Milano Centrale
Ave. Duration
1h 18m
Frequency
Every 4 hours
Estimated price
14€ - 45€
Website
Italo Treno
Smart Economy
16€ - 24€
Smart Low Cost
14€ - 20€
Smart Flex
30€ - 45€
Trenitalia Intercity Night

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
800 90 60 60
Website
trenitalia.com
Night train from Roma Tiburtina to Milano P.Garibaldi
Ave. Duration
7h
Frequency
Twice daily
Estimated price
50€ - 75€
Website
Trenitalia ICN
Schedules at
Trenitalia
Schedules at
Bahn DB
Trenitalia

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Torino Porta Susa to Milano Centrale
Ave. Duration
1h 40m
Frequency
Hourly
Estimated price
9€ - 20€
Website
Trenitalia
1st Class
18€ - 20€
Trenitalia Intercity

Trenitalia’s Intercity (IC) trains are slower than the high-speed Frecce trains but are still a good way to travel between major cities and towns, with routes including Rome to Naples, Venice to Bologna and Milan to Genoa. Tickets usually open for booking 90 days ahead of travel, and you’ll need make a seat reservation before boarding. All IC trains have 1st and 2nd class carriages as well as a bar buffet car, air conditioning and power sockets. InterCity trains that run at night are called InterCity Notte (ICN).

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Torino Porta Susa to Milano Centrale
Ave. Duration
1h 43m
Frequency
Once daily
Estimated price
10€ - 14€
Website
Trenitalia Intercity
2nd Class
10€ - 14€
Trenitalia Eurocity

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Verona Porta Nuova to Milano Centrale
Ave. Duration
1h 23m
Frequency
Once daily
Estimated price
35€ - 95€
Website
Trenitalia Eurocity
2nd Class
35€ - 50€
1st Class
65€ - 95€
Bus operators
Baltour
Phone
+39 0861 1991900
Email
info@baltour.it
Website
global.flixbus.com
Bus from Roma - Autostazione Tiburtina to Milano - Autostazione San Donato
Ave. Duration
7h 15m
Frequency
5 times a day
Estimated price
23€ - 35€
Website
Baltour
Marino Autolinee
Phone
+39 080 3112335
Email
info@marinobus.it
Website
marinobus.it
Bus from Rome to Milan - San Donato
Ave. Duration
7h 40m
Frequency
Once daily
Estimated price
35€
Website
Marino Autolinee
FlixBus

One of Europe’s leading bus companies, Flixbus serves 2000+ destinations in 29 countries, including Germany, France, Italy, Austria, the Netherlands and Croatia and into Scandinavia and eastern Europe, as well as some US cities. Coaches have toilets, free WiFi and power outlets, plus snacks and drinks for purchase on board. Flixbus is a good choice for the budget-conscious traveller; purchase tickets in advance for the cheapest fares (note: there is no option to reserve a seat in advance).

Rome2rio's guide to FlixBus
Contact Details
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Rome, Rome Tiburtina Bus station to Milan, Milan
Ave. Duration
7h 55m
Frequency
Every 4 hours
Estimated price
28€ - 35€
Website
flixbus.co.uk
Other operators
BlaBlaCar

Blablacar is a popular ridesharing platform with 70 million users over 22 (mostly European) countries. The basic idea is that you carpool with locals who are already planning to drive your route and have space in their car. With some flexibility, you’ll get to your destination often faster and cheaper than other means. On the website or app, enter your departure and arrival points and your date of travel, sift through the profiles of drivers who’ve posted pre-planned drives and find one whose timing and preferences match yours. Request to join the ride, wait to be accepted, and pay your share of the set price.

Rome2rio's guide to BlaBlaCar
Contact Details
Website
blablacar.com
Rideshare from Rome to Milan
Ave. Duration
6h 57m
Frequency
Every 2 hours
Estimated price
29€ - 32€
Book at
blablacar.co.uk

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.

More Questions & Answers

The quickest flight from Rome Airport to Milan Linate Airport is the direct flight which takes 1h 10m.

Search flights

Rome to Milan bus services, operated by Baltour, arrive at Milano - Autostazione San Donato station.

More details

Rome to Milan train services, operated by Trenitalia Frecce, arrive at Milano Centrale station.

More details

Yes, the driving distance between Rome to Milan is 575 km. It takes approximately 5h 21m to drive from Rome to Milan.

Get driving directions

Alitalia offers flights from Rome Airport to Milan Linate Airport.

Search flights

Book your Rome to Milan train tickets online with Omio.

Search and book

There are 4971+ hotels available in Milan. Prices start at 87€ per night.

More details

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.

Read Rome2rio's guide to Blablacar

The best way to get from Rome to Rome Airport is to train which takes 32 min and costs 7€ - 35€.

More details