Milan to Florence

Overview Compare Train Bus

How to get from Milan to Florence

Popularly known as the birthplace of the Renaissance, Florence is the place to be for the best of medieval art and culture. The city provides a perfect range of scenery after exploring the modern streets of Milan.

Kick off your visit at the Uffizi and Accademia galleries for the most iconic European works, particularly Michelangelo’s marble masterpiece David. Walk the streets of the Historic Centre and marvel at how this ancient Etruscan settlement transformed into one of the wealthiest cities in the Middle Ages.

2 ways to get from Milan to Florence

Transport ModeDurationCostsAvailability
Train2-6.5 hours€26 ($27)Check train tickets
Bus4-5 hours€13 ($13.50)Check bus tickets

There are 2 ways you can cross the 305 km distance from Milan to Florence: a 2 to 6.5-hour train ride with fares from €26 ($27) and a 4 to 5-hour bus with ticket prices from €13 ($13.50).

Taking the train from Milan to Florence offers a combination of speed and convenience. There are several trains throughout the day for this route. High-speed trains take only 2 hours, but they are about double as expensive as regional trains that take 5-6.5 hours. Fares start from €26 ($27) for the regional trains, while high-speed trains cost around €46 ($47.50).

The bus is another good option for the Milan to Florence route, as most trips are cheaper than the train. Bus tickets start from €13 ($13.50) with a travel time of 4-5 hours. The downside is that the bus stations in Milan and Florence are outside the city centres and will require additional trips.

Although both cities have their own airports, there is no direct flight from Milan to Florence. Most flights make at least one stop in Rome, and the fastest flight takes about 3 hours. With expensive fares from €106 ($110), we think it is much better to take a high-speed train.

Itinerary from Milan to Florence

Milan to Florence by Train

Duration: 2-6.5 hours
Cost: €26 ($27)
Duration: 2-6.5 hours
Cost: €26 ($27)

Taking the train is the easiest way to get from Milan to Florence.

There are at least 2 train departures every hour from 05:10 to 20:40. Note that some of them will require you to make one or two transfers along the way.

There are two types of train that you can take:

High-speed trains

High-speed trains, like Italo and Frecciarossa, offer direct trips from Milan to Florence. With rates from €46 ($47.50), you can reach Florence in just 2 hours.

This option is the best choice if you’d rather save time than money.

Regional trains

Regional trains are budget-friendly trains with rates from €26 ($27). However, all trains make one or two stops either in Bologna, Prato, Pisa, or Viareggio. Travel time can take 5 to 6.5 hours.

Note that regional trains take 1-2 hours longer than the bus and also cost twice the price. The only advantage of the regional train compared to the bus is that the train arrives in the city centre of Florence. Buses arrive about 10 km from Florence city centre.

Train schedules

Train OperatorScheduleDurationBooking
Italo16x departure from
05:40 to 20:40
2 hours€53 ($55)
Check Train Tickets
Frecciarossa20x departure from
05:10 to 20:10
2 hours€46 ($47.50)
Check Train Tickets
Regional9x departure from
05:15 to 18:15
5 – 6.5 hours€26 ($27)
Check Train Tickets

Tickets are available at the train station, but if you want to ensure good seats, you can also buy them online beforehand on Omio.

Departure and arrival station

You can board the train at Milan Centrale, located 4 km north of Milan Cathedral.

The trains all stop at Santa Maria Novella Train Station in Florence city centre. This station is just a few meters away from the famous basilica of the same name.

Milan to Florence by Bus

Duration: 4-5 hours
Cost: €13 ($13.50)
Duration: 4-5 hours
Cost: €13 ($13.50)

Buses are also available for the Milan to Florence route. Bus fares can be cheaper, but the travel time takes longer than the high-speed train.

There are 2 main bus operators for this route. Itabus and FlixBus both offer several daily trips from morning until night.

The travel time can take 4-5 hours, depending on the bus departure and traffic. Bus fares start from €13 ($13.50).

Bus schedules from Milan to Florence

Bus OperatorScheduleDurationCosts
Itabus9x departure from
06:05 to 17:30
4 – 4.5 hours€13 ($13.50)
Check Bus Tickets
FlixBus9x departure from
02:20 to 22:00
4 – 5 hours€23 ($23.50)
Check Bus Tickets

Note that the bus fares depend on how early you book them. This means they can still get cheaper if you book tickets in advance.

You can book your ticket online prior to your trip via BookAway.

Departure and arrival station

All buses depart from Lampugnano Bus Station, located 10 km northwest of Milan city centre. If you’re coming from the city centre, you would have to take a 30-minute bus to this bus station.

Most of the buses arrive at Villa Costanza Bus Station in Scandicci. This station is still a bit far from Florence city centre, around 10 km. From here, you can take a 20-minute taxi to Florence for around €25 ($26).

Most popular routes in Europe

Split to Dubrovnik

Dubrovnik to Split

Split to Hvar

Dubrovnik to Hvar

Rome to Naples

Milan to Venice

Rome to Florence

Venice to Milan

Naples to Capri

Rome to Positano

Rome to Milan

Athens to Santorini

Athens to Milos

Was this post helpful?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Your feedback is very valueable to us

How we can improve this post?