There are 7 ways to get from Milan to Florence 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 • 1h 54m
Cheapest option
Rideshare • 3h 52m
5 alternative options
Bus • 4h 59m
Night train • 4h 8m
Drive • 2h 51m
Fly from Milan Linate • 4h 22m
Fly from Milan Malpensa • 5h 2m
Milan to Florence by train
The train journey time between Milan and Florence is around 1h 54m and covers a distance of around 304 km. Operated by Trenitalia Frecce, ItaloTreno and Trenitalia Intercity, the Milan to Florence train service departs from Milano Centrale and arrives in Firenze S.M.N.. Typically 124 trains run weekly, although weekend and holiday schedules can vary so check in advance.
Travel safe during COVID-19
Rules to follow in Italy
1.5m
Recommended
Travel within Italy
There are no current restrictions
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 recommended
- There is a social distancing requirement of 1.5 metres
- There are no current restrictions
The national COVID-19 helpline number in Florence is 1500.
Wearing a face mask on public transport in Florence is recommended.
The social distance requirement in Florence 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: 8 Mar 2023
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 Milan to Florence is to rideshare which costs €17 and takes 3h 52m.
The fastest way to get from Milan to Florence is to train. Taking this option will cost €19 - €80 and takes 1h 54m.
No, there is no direct bus from Milan to Florence. However, there are services departing from duomo m1 m3 and arriving at Florence via Milan. The journey, including transfers, takes approximately 4h 59m.
Yes, there is a direct train departing from Milano Centrale and arriving at Firenze S.M.N.. Services depart hourly, and operate every day. The journey takes approximately 1h 54m.
The distance between Milan and Florence is 248 km. The road distance is 301.7 km.
The best way to get from Milan to Florence without a car is to train which takes 1h 54m and costs €19 - €80.
The train from Milano Centrale to Firenze S.M.N. takes 1h 54m including transfers and departs hourly.
Milan to Florence bus services, operated by FlixBus, depart from Milan station.
Milan to Florence train services, operated by Trenitalia Frecce, depart from Milano Centrale station.
The best way to get from Milan to Florence is to train which takes 1h 54m and costs €19 - €80. Alternatively, you can bus, which costs €25 - €40 and takes 4h 59m, you could also fly, which costs €80 - €290 and takes 4h 22m.

- Distance: 248.2 km
- Duration: 1h 54m
What companies run services between Milan, Italy and Florence, Italy?
Trenitalia Frecce operates a train from Milano Centrale to Firenze S.M.N. hourly. Tickets cost €24 - €80 and the journey takes 1h 54m. Two other operators also service this route. Alternatively, FlixBus operates a bus from Milan to Florence once daily. Tickets cost €23 - €35 and the journey takes 3h 35m.

- Website
- lufthansa.com
Flights from Milan Linate to Florence via Munich
- Ave. Duration
- 6h 20m
- When
- Every day
- Estimated price
- €290 - €1200
Flights from Milan Linate to Florence via Frankfurt
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- €290 - €1200
Flights from Milan Malpensa to Florence via Munich
- Ave. Duration
- 3h 41m
- When
- Every day
- Estimated price
- €370 - €1100
Flights from Milan Malpensa to Florence via Frankfurt
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- €370 - €1100

- Website
- alitalia.com
Flights from Milan Linate to Florence via Rome
- Ave. Duration
- 3h 12m
- When
- Every day
- Estimated price
- €120 - €310
Flights from Milan Linate to Florence via Bari, Rome
- Ave. Duration
- 6h 2m
- When
- Every day
- Estimated price
- €120 - €310
Flights from Milan Linate to Florence via Brindisi, Rome
- Ave. Duration
- 6h 10m
- When
- Every day
- Estimated price
- €120 - €310
Flights from Milan Malpensa to Florence via Luxembourg
- Ave. Duration
- 4h 15m
- When
- Tuesday and Thursday
- Estimated price
- €110 - €500

- Website
- airfrance.com
Flights from Milan Linate to Florence via Paris Charles de Gaulle
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- €290 - €950
Flights from Milan Malpensa to Florence via Paris Charles de Gaulle
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €260 - €900

- Website
- klm.com
Flights from Milan Linate to Florence via Amsterdam Schiphol
- Ave. Duration
- 5h 50m
- When
- Every day
- Estimated price
- €220 - €2100
Flights from Milan Malpensa to Florence via Amsterdam Schiphol
- Ave. Duration
- 6h 10m
- When
- Saturday and Sunday
- Estimated price
- €130 - €1000

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

- Website
- airdolomiti.it
Flights from Milan Linate to Florence via Munich
- Ave. Duration
- 6h 20m
- When
- Every day
- Estimated price
- €290 - €1200
Flights from Milan Linate to Florence via Frankfurt
- Ave. Duration
- 5h 40m
- When
- Every day
- Estimated price
- €290 - €1200

- Website
- vueling.com
Flights from Milan Linate to Florence via Madrid
- Ave. Duration
- 6h 10m
- When
- Every day
- Estimated price
- €250 - €950
Flights from Milan Malpensa to Florence via Barcelona
- Ave. Duration
- 4h 40m
- When
- Tuesday, Thursday, Friday and Saturday
- Estimated price
- €85 - €550

- Website
- iberia.com
Flights from Milan Linate to Florence via Madrid
- Ave. Duration
- 6h 10m
- When
- Every day
- Estimated price
- €250 - €950

- Website
- luxair.lu
Flights from Milan Malpensa to Florence via Luxembourg
- Ave. Duration
- 4h 15m
- When
- Tuesday and Thursday
- Estimated price
- €110 - €500

- Website
- flytap.com
Flights from Milan Malpensa to Florence via Lisbon
- Ave. Duration
- 6h 40m
- When
- Monday, Thursday, Saturday and Sunday
- Estimated price
- €140 - €700

- Website
- en.aegeanair.com
Flights from Milan Malpensa to Florence via Athens
- Ave. Duration
- 6h 45m
- When
- Tuesday and Saturday
- Estimated price
- €270 - €700

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 Milano Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 54m
- Frequency
- Hourly
- Estimated price
- €24 - €80
- Website
- https://www.trenitalia.com/en/frecce.html
- Schedules at
- https://reiseauskunft.bahn.de/bin/query.exe/en?revia=yes&existOptimizePrice=1&country=overseas&initialAvail=ON&S={fromName}&Z={toName}&start=1
- Super Economy
- €24 - €35
- Base Standard
- €45 - €65
- Base Premium
- €55 - €80

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 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale Station to Firenze Santa Maria Novella
- Ave. Duration
- 1h 55m
- Frequency
- Every 4 hours
- Estimated price
- €21 - €65
- Website
- https://www.italotreno.it/en
- Smart Economy
- €23 - €35
- Smart Low Cost
- €21 - €27
- Smart Flex
- €40 - €65

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 Milano Centrale to Firenze S.M.N.
- Ave. Duration
- 3h 42m
- Frequency
- Once daily
- Estimated price
- €19 - €27
- Website
- https://www.trenitalia.com/
- 2nd Class
- €19 - €27

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 Milano Centrale to Firenze Campo Marte
- Ave. Duration
- 4h 8m
- Frequency
- Once daily
- Estimated price
- €30 - €50
- Website
- Trenitalia ICN
- Schedules at
- Trenitalia
- Schedules at
- Bahn DB

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 Milan to Florence
- Ave. Duration
- 3h 35m
- Frequency
- Once daily
- Estimated price
- €23 - €35
- Website
- https://www.flixbus.co.uk
- Book at
- https://shop.global.flixbus.com/
Frequently asked questions

- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Milan to Florence
- Ave. Duration
- 3h 52m
- 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
5 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 guideItaly 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 guideGetting to Milan from the airport
Get the details in Rome2rio’s airport-to-city travel guide
Read the travel guideMore Questions & Answers
There is no direct flight from Milan Linate Airport to Florence Airport. The quickest flight takes 2h 55m and has one stopover.
Milan to Florence bus services, operated by FlixBus, arrive at Florence station.
Milan to Florence train services, operated by Trenitalia Frecce, arrive at Firenze S.M.N. station.
Yes, the driving distance between Milan to Florence is 302 km. It takes approximately 2h 51m to drive from Milan to Florence.
Iberia, Vueling Airlines, Lufthansa and four other airlines offer flights from Milan Linate Airport to Florence Airport.
Book your Milan to Florence train tickets online with Omio.
There are 1700+ hotels available in Florence. Prices start at €87 per night.
The best way to get from Milan to Milan Linate Airport is to line 4 subway which takes 7 min and costs €1 - €2.