There are 10 ways to get from Florence to Milan by train, bus, night train, night bus, 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
-
Take the train from Firenze Santa Maria Novella to Milano Centrale
Cheapest option
Bus
-
Take the bus from Florence to Milan
8 alternative options
Train via Milano Rogoredo
-
Take the train from Firenze S.M.N. to Milano Rogoredo
Night train
-
Take the night train from Firenze Campo Marte to Milano P.Garibaldi
Night bus
-
Take the night bus from Florence Villa Constanza Bus Station to Milan San Donato
Rideshare
-
Take the rideshare from Florence to Milan
Drive
-
Drive from Florence to Milan
Fly Florence to Milan Linate
-
Fly from Florence (FLR) to Milan Linate (LIN)
Fly Florence to Milan Malpensa
-
Fly from Florence (FLR) to Milan Malpensa (MXP)
Train to Bologna, fly to Milan Linate
-
Take the train from Firenze S.M.N. to Bologna Centrale
-
Fly from Bologna (BLQ) to Milan Linate (LIN)
Florence to Milan by train
Travel safe during COVID-19
Rules to follow in Italy
1.5m
Mandatory
Travel within Italy
Observe COVID-19 safety rules
FFP2 masks are required on all public transport
COVID-19 help in Italy
If you need help, visit the national COVID-19 website or call the COVID-19 Helpline 1500
Frequently Asked Questions
Yes, travel within Italy is currently allowed.
Explore travel optionsDomestic travel is not restricted, but some conditions may apply
- Face masks are mandatory
- There is a social distancing requirement of 1.5 metres
- Observe COVID-19 safety rules
- FFP2 masks are required on all public transport
The national COVID-19 helpline number in Milan is 1500.
Wearing a face mask on public transport in Milan is mandatory.
The social distance requirement in Milan is 1.5 metres.
Make yourself known to an official member of staff and/or call the national coronavirus helpline number on 1500.
Last updated: 1 Jul 2022
Exceptions may apply, for full details: European Union.
We're working around the clock to bring you the latest COVID-19 travel updates.
This information is compiled from official sources. To the best of our knowledge, it is correct as of the last update.
Visit Rome2rio travel advice for general help.
Questions & Answers
The cheapest way to get from Florence to Milan is to rideshare which costs €17 and takes 3h 49m.
The fastest way to get from Florence to Milan is to train. Taking this option will cost €21 - €80 and takes 1h 55m.
No, there is no direct bus from Florence to Milan. However, there are services departing from Florence and arriving at duomo m1 m3 via san donato m3. The journey, including transfers, takes approximately 4h 35m.
Yes, there is a direct train departing from Firenze Santa Maria Novella and arriving at Milano Centrale. Services depart every three hours, and operate every day. The journey takes approximately 1h 55m.
The distance between Florence and Milan is 248 km. The road distance is 299.3 km.
The best way to get from Florence to Milan without a car is to train which takes 1h 55m and costs €21 - €80.
The train from Firenze Santa Maria Novella to Milano Centrale takes 1h 55m including transfers and departs every three hours.
Florence to Milan bus services, operated by FlixBus, depart from Florence station.
Florence to Milan train services, operated by ItaloTreno, depart from Firenze Santa Maria Novella station.
The best way to get from Florence to Milan is to train which takes 1h 55m and costs €21 - €80. Alternatively, you can bus, which costs €16 - €20 and takes 4h 35m, you could also fly, which costs €85 - €360 and takes 4h 41m.

- Distance: 248.2 km
- Duration: 1h 55m
What companies run services between Florence, Italy and Milan, Italy?
ItaloTreno operates a train from Firenze Santa Maria Novella to Milano Centrale every 2 hours. Tickets cost €21 - €60 and the journey takes 1h 55m. Trenitalia Frecce also services this route 4 times a day. Alternatively, FlixBus operates a bus from Florence to Milan twice daily. Tickets cost €16 - €20 and the journey takes 3h 40m.

- Website
- lufthansa.com
Flights from Florence to Milan Linate via Munich
- Ave. Duration
- 3h 20m
- When
- Monday to Saturday
- Estimated price
- €340 - €1200
Flights from Florence to Milan Linate via Frankfurt
- Ave. Duration
- 4h 38m
- When
- Every day
- Estimated price
- €330 - €1200
Flights from Florence to Milan Malpensa via Frankfurt
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- €340 - €1000
Flights from Florence to Milan Malpensa via Munich
- Ave. Duration
- 3h 15m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday and Sunday
- Estimated price
- €350 - €1000
Flights from Bologna to Milan Linate via Munich
- Ave. Duration
- 3h 5m
- When
- Monday to Saturday
- Estimated price
- €340 - €1600
Flights from Bologna to Milan Linate via Frankfurt
- Ave. Duration
- 4h 21m
- When
- Every day
- Estimated price
- €330 - €1200

- Website
- airfrance.com
Flights from Florence to Milan Linate via Paris Charles de Gaulle
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- €290 - €1400
Flights from Florence to Milan Malpensa via Paris Charles de Gaulle
- Ave. Duration
- 5h 2m
- When
- Every day
- Estimated price
- €300 - €1900
Flights from Bologna to Milan Linate via Paris Charles de Gaulle
- Ave. Duration
- 5h 21m
- When
- Every day
- Estimated price
- €250 - €1900

- Website
- klm.com
Flights from Florence to Milan Linate via Amsterdam Schiphol
- Ave. Duration
- 6h 5m
- When
- Saturday and Sunday
- Estimated price
- €230 - €1100
Flights from Florence to Milan Malpensa via Amsterdam Schiphol
- Ave. Duration
- 5h 46m
- When
- Every day
- Estimated price
- €220 - €1100
Flights from Bologna to Milan Linate via Amsterdam Schiphol
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- €200 - €1100

- Website
- alitalia.com
Flights from Florence to Milan Linate via Rome
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- €130 - €600
Flights from Florence to Milan Linate via Rome, Alghero
- Ave. Duration
- 5h 30m
- When
- Every day
- Estimated price
- €130 - €600
Flights from Florence to Milan Linate via Rome, Cagliari
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- €130 - €600
Flights from Bologna to Milan Linate via Rome
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- €110 - €470

- Website
- airdolomiti.it
Flights from Florence to Milan Linate via Munich
- Ave. Duration
- 3h 20m
- When
- Monday to Saturday
- Estimated price
- €340 - €1200
Flights from Florence to Milan Linate via Frankfurt
- Ave. Duration
- 4h 40m
- When
- Every day
- Estimated price
- €340 - €1200
Flights from Bologna to Milan Linate via Munich
- Ave. Duration
- 3h 5m
- When
- Monday to Saturday
- Estimated price
- €340 - €1600

- Website
- iberia.com
Flights from Florence to Milan Malpensa via Barcelona
- Ave. Duration
- 5h 22m
- When
- Every day
- Estimated price
- €100 - €650
Flights from Florence to Milan Malpensa via Paris Orly
- Ave. Duration
- 6h 50m
- When
- Wednesday
- Estimated price
- €100 - €650
Flights from Bologna to Milan Linate via Madrid
- Ave. Duration
- 6h 40m
- When
- Every day
- Estimated price
- €280 - €1100

- Website
- vueling.com
Flights from Florence to Milan Malpensa via Barcelona
- Ave. Duration
- 5h 22m
- When
- Every day
- Estimated price
- €100 - €650
Flights from Florence to Milan Malpensa via Paris Orly
- Ave. Duration
- 6h 50m
- When
- Wednesday
- Estimated price
- €100 - €650

- Website
- swiss.com
Flights from Florence to Milan Malpensa via Zurich
- Ave. Duration
- 3h 35m
- When
- Every day
- Estimated price
- €180 - €750

- Website
- britishairways.com
Flights from Bologna to Milan Linate via London Heathrow
- Ave. Duration
- 6h 20m
- When
- Monday, Tuesday, Wednesday, Thursday and Sunday
- Estimated price
- €270 - €1000

- Website
- flexflight.dk
Flights from Florence to Milan Linate via Elba Island
- Ave. Duration
- 5h 30m
- When
- Friday
- Estimated price
- €210 - €330

- Website
- silverair.cz
Flights from Florence to Milan Linate via Elba Island
- Ave. Duration
- 5h 40m
- When
- Friday
- Estimated price
- €17 - €220

- Website
- austrian.com
Flights from Florence to Milan Malpensa via Vienna
- Ave. Duration
- 4h 15m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
- Estimated price
- €310 - €900

- Website
- flysas.com
Flights from Florence to Milan Malpensa via Copenhagen
- Ave. Duration
- 7h 10m
- When
- Monday, Tuesday, Thursday and Friday
- Estimated price
- €300 - €1300

- Website
- brusselsairlines.com
Flights from Bologna to Milan Linate via Brussels
- Ave. Duration
- 6h 20m
- When
- Friday and Sunday
- Estimated price
- €340 - €1800

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 Firenze Santa Maria Novella to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Every 2 hours
- Estimated price
- €21 - €60
- Website
- Italo Treno
- Smart Economy
- €23 - €35
- Smart Low Cost
- €21 - €29
- Smart Flex
- €40 - €60
Train from Firenze Santa Maria Novella to Milano Rogoredo
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €20 - €60
- Website
- Italo Treno
- Smart Economy
- €22 - €35
- Smart Low Cost
- €20 - €29
- Smart Flex
- €40 - €60
Train from Firenze Santa Maria Novella to Bologna Centrale
- Ave. Duration
- 39 min
- Frequency
- Hourly
- Estimated price
- €12 - €40
- Website
- Italo Treno
- Smart Economy
- €14 - €21
- Smart Low Cost
- €12 - €17
- Smart Flex
- €26 - €40

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 Firenze S.M.N. to Milano P.Garibaldi
- Ave. Duration
- 2h 16m
- Frequency
- 4 times a day
- Estimated price
- €24 - €80
- Website
- Trenitalia Frecce
- Super Economy
- €24 - €35
- Base Standard
- €45 - €65
- Base Premium
- €55 - €80
Train from Firenze S.M.N. to Milano Rogoredo
- Ave. Duration
- 1h 43m
- Frequency
- Hourly
- Estimated price
- €23 - €80
- Website
- Trenitalia Frecce
- Super Economy
- €23 - €35
- Base Standard
- €45 - €60
- Base Premium
- €55 - €80
Train from Firenze S.M.N. to Bologna Centrale
- Ave. Duration
- 38 min
- Frequency
- Every 30 minutes
- Estimated price
- €11 - €45
- Website
- Trenitalia Frecce
- Super Economy
- €11 - €15
- Base Standard
- €25 - €35
- Base Premium
- €30 - €45

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 Firenze S.M.N. to Milano Rogoredo
- Ave. Duration
- 3h 43m
- Frequency
- Once daily
- Estimated price
- €18 - €26
- Website
- Trenitalia Intercity
- 2nd Class
- €18 - €26
Train from Firenze S.M.N. to Bologna Centrale
- Ave. Duration
- 1h 7m
- Frequency
- Once daily
- Estimated price
- €7 - €10
- Website
- Trenitalia Intercity
- 2nd Class
- €7 - €10

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 Firenze Campo Marte to Milano P.Garibaldi
- Ave. Duration
- 3h 54m
- Frequency
- Once daily
- Estimated price
- €35 - €50
- Website
- Trenitalia ICN
- Schedules at
- Trenitalia
- Schedules at
- Bahn DB

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 Firenze S.M.N. to Bologna Centrale
- Ave. Duration
- 1h 28m
- Frequency
- Twice daily
- Estimated price
- €6 - €14
- Website
- Trenitalia
- 1st Class
- €12 - €14
Frequently asked questions

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 30 300 137 300
- service@flixbus.com
- Website
- flixbus.de
Bus from Florence to Milan
- Ave. Duration
- 3h 40m
- Frequency
- Twice daily
- Estimated price
- €16 - €20
- Website
- flixbus.co.uk
Frequently asked questions

- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Night bus from Florence Villa Constanza Bus Station to Milan San Donato
- Ave. Duration
- 4h 30m
- Frequency
- 3 times a day
- Estimated price
- €15 - €30
- Website
- Itabus

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 Florence to Milan
- Ave. Duration
- 3h 49m
- Frequency
- Hourly
- Estimated price
- €17
- 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.
Related travel guides
Italy Travel Guides
Travel inspiration and top planning tips for getting around Italy.
Read the travel guideWant to know more about Flixbus?
Rome2rio’s guide has all the details
Read the travel guide5 incredible day trips from Florence by train
Within 90 minutes, you could be exploring regions as stunning as Emilia-Romagna, Umbria and the Veneto.
Read the travel guideIs ride-sharing platform BlaBlaCar right for you?
Don't have a car, or can't get there on public transportation? This carpooling platform could be your answer.
Read the travel guideMore Questions & Answers
There is no direct flight from Florence Airport to Milan Linate Airport. The quickest flight takes 3h 5m and has one stopover.
Florence to Milan bus services, operated by FlixBus, arrive at Milan station.
Florence to Milan train services, operated by ItaloTreno, arrive at Milano Centrale station.
Yes, the driving distance between Florence to Milan is 299 km. It takes approximately 2h 51m to drive from Florence to Milan.
FlexFlight ApS, Silver Air, Air Dolomiti and four other airlines offer flights from Florence Airport to Milan Linate Airport.
Book your Florence to Milan train tickets online with Omio.
There are 1039+ hotels available in Milan. Prices start at €87 per night.
The best way to get from Florence to Florence Airport is to tram which takes 19 min and costs €2.