There are 6 ways to get from Florence to Milan by train (Trenitalia), bus, car, plane, or rideshare
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 Firenze S.M.N. to Milano Centraletrain Fr
1h 56m€30–90Bus
cheapest- Take the bus from Florence Villa Constanza Bus Station to Milano, San Donato M3bus N528 / ...
3h 25m€12–45Drive 297.8 km
- Drive from Florence to Milancar 297.8 km
2h 52m€47–68Fly
- Fly from Florence Peretola Airport (FLR) to Milan Linate Airport (LIN)plane FLR - LIN
4h 1m€113–275Bus via Duomo M3
- Take the bus from Florence Villa Constanza Bus Station to Milan - San Donato Bus Stationbus BlaBlaCar Bus
4h 37m€29–52Rideshare
- Take the rideshare from Florence to Milan300.9 km
3h 49m€17
Florence to Milan by train
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 which takes 1h 56m and costs €30 - €90.
Yes, there is a direct bus departing from Florence Villa Constanza Bus Station station and arriving at Milano, San Donato M3. Services depart every three hours, and operate every day. The journey takes approximately 3h 25m.
Yes, there is a direct train departing from Firenze S.M.N. and arriving at Milano Centrale. Services depart every 30 minutes, and operate every day. The journey takes approximately 1h 56m.
The distance between Florence and Milan is 304 km. The road distance is 297.8 km.
The best way to get from Florence to Milan without a car is to train which takes 1h 56m and costs €30 - €90.
The train from Firenze S.M.N. to Milan Centrale takes 1h 56m including transfers and departs every 30 minutes.
Florence to Milan bus services, operated by FlixBus, depart from Florence Villa Constanza Bus Station.
Florence to Milan train services, operated by Trenitalia Frecce, depart from Firenze S.M.N. station.
The best way to get from Florence to Milan is to train which takes 1h 56m and costs €30 - €90. Alternatively, you can bus, which costs €12 - €45 and takes 3h 25m, you could also fly, which costs €110 - €280 and takes 4h 1m.
What companies run services between Florence, Italy and Milan, Italy?
Trenitalia Frecce operates a train from Firenze S.M.N. to Milano Centrale hourly. Tickets cost €45–90 and the journey takes 1h 56m. Two other operators also service this route. Alternatively, FlixBus operates a bus from Florence Villa Constanza Bus Station to Milano, San Donato M3 every 3 hours. Tickets cost €25–45 and the journey takes 3h 25m. Two other operators also service this route.
- Website
- ita-airways.com
Flights from Florence Peretola Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 27m
- When
- Every day
- Estimated price
- €140–250
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 47m
- When
- Every day
- Estimated price
- €180–800
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €120–1,100
Flights from Florence Peretola Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €110–400
- Website
- lufthansa.com
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 47m
- When
- Every day
- Estimated price
- €180–800
Flights from Florence Peretola Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 45m
- When
- Every day
- Estimated price
- €140–250
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €120–1,100
- Website
- flexflight.dk
Flights from Florence Peretola Airport to Milan Linate Airport via Elba Island
- Ave. Duration
- 2h 30m
- When
- Friday
- Estimated price
- €45–550
Flights from Florence Peretola Airport to Milan Linate Airport via Cagliari
- Ave. Duration
- 4h 20m
- When
- Monday and Friday
- Estimated price
- €130–800
- Website
- polarair.ru
Flights from Florence Peretola Airport to Milan Linate Airport via Elba Island
- Ave. Duration
- 2h 30m
- When
- Friday
- Estimated price
- €45–550
- Website
- aeroitalia.com
Flights from Florence Peretola Airport to Milan Linate Airport via Cagliari
- Ave. Duration
- 4h 20m
- When
- Monday and Friday
- Estimated price
- €130–800
- Website
- airdolomiti.it
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 4h 25m
- When
- Saturday
- Estimated price
- €180–800
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 5h 30m
- When
- Every day
- Estimated price
- €220–1,100
- Website
- austrian.com
Flights from Florence Peretola Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €110–400
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- €45–90
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- €35–80
- Website
- https://www.italotreno.it/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 3h 54m
- Frequency
- 3 times a day
- Estimated price
- €30–70
- Website
- https://www.trenitalia.com/en.html
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 3h 25m
- Frequency
- Every 3 hours
- Estimated price
- €25–45
- Website
- https://www.flixbus.co.uk
- Phone
- +39 0965644747
- [email protected]
- Website
- autolineefederico.it
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 4h 5m
- Frequency
- Once daily
- Estimated price
- €12–19
- Schedules at
- autolineefederico.it
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 4h 10m
- Frequency
- Once daily
- Estimated price
- €18–35
- Website
- https://www.itabus.it/en/home
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Florence Villa Constanza Bus Station to Milan - San Donato Bus Station
- Ave. Duration
- 4h 20m
- Frequency
- Twice daily
- Estimated price
- €28–50
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Florence to Milan
- Ave. Duration
- 3h 49m
- Frequency
- Hourly
- Estimated price
- €17
- 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
Want to know more about Flixbus?
Read the travel guide
5 incredible day trips from Florence by train
Read the travel guide
More Questions & Answers
Florence to Milan bus services, operated by FlixBus, arrive at Milano, San Donato M3 station.
Florence to Milan train services, operated by Trenitalia Frecce, arrive at Milano Centrale station.
Yes, the driving distance between Florence to Milan is 298 km. It takes approximately 2h 52m to drive from Florence to Milan.
Book your Florence to Milan train tickets online with Omio.
Book your Florence to Milan bus tickets online with Omio and FlixBus.
There are 14422+ hotels available in Milan.
Check out Blablacar's carpooling service for rideshare options between Florence and Milan. A great option if you don't have a driver's licence or want to avoid public transport.






























