Florence to Milan

Overview Compare Train Bus

How to get from Florence to Milan

As Italy’s economic capital, Milan is business and fashion-centric. Here is where luxury and art unite, a moderns contrast to the Renaissance city of Florence.

Milan boasts of a massive collection of old and new art masterpieces, particularly Leonardo da Vinci’s Last Supper. Everywhere you look is jaw-dropping architecture – from its more recent skyscrapers to the age-old Milan Cathedral.

2 ways to get from Florence to Milan

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

You have 2 options to travel the 305 km distance from Florence to Milan: a 2 to 6.5-hour train with rates from €26 ($28) and a 4 to 5-hour bus with rates from €12 ($13).

The train is a convenient and fast way to get from Florence to Milan. Trains are available from midnight until late at night. You can ride a high-speed train that takes only 2 hours but is more expensive at €50 ($54). Another option is a regional train that is cheaper at €26 ($28) but takes 5-6.5 hours to Milan.

If you want to save money on this trip from Florence to Milan, consider taking a bus instead of the regional train. Buses are cheaper and can bring you to Milan in around 4-5 hours, which is a few hours quicker than the regional train. Ticket fares start from €12 ($13). The only downside of the bus is that the bus stations are outside Florence and Milan city centre.

There is no direct flight from Florence to Milan. Although both cities have their own airports, flights make at least one stop (usually in Rome), making the travel time take at least 3 hours. With airfares from €78 ($84), we don’t think a flight offers any advantage over the high-speed train.

Itinerary from Florence to Milan

Florence to Milan by Train

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

Travelling from Florance to Milan by train is the easiest way. You can expect a comfortable ride and trains depart 2-4 times per hour.

The first train departs at 04:32 with the last trip at 22:25. Keep in mind that some trips will require you to make one or two transfers along the way.

There are two types of train that you can take from Florence to Milan:

High-speed trains

High-speed trains like Italo and Frecciarossa offer direct trips from Florence to Milan. The travel time takes only 2 hours, but tickets are more expensive with rates from €50 ($54).

Taking this train is the quickest way to travel from Florence to Milan.

Regional trains

Regional trains are budget-friendly at €26 ($28). However, all trains require you to make two transfers either in Bologna, Prato, Faenza, or Piacenza. Travel time can take 5 to 6.5 hours.

If you want to save money by taking a regional train, you might be better off taking the bus. The regional train is still twice as expensive as the bus, and the journey takes 1-2 hours longer compared to the bus.

Train schedules

Train OperatorScheduleDurationBooking
Italo16x departure from
07:25 to 22:25
2 hours€53 ($57)
Check Train Tickets
Frecciarossa26x departure from
07:10 to 21:55
2 hours€50 ($54)
Check Train Tickets
Regional11x departure from
04:32 to 17:53
5 – 6.5 hours€26 ($28)
Check Train Tickets

Tickets are available at the train station or you can book online via Omio to skip the long queues at the train station.

Departure and arrival station

Trains depart from Santa Maria Novella Train Station in Florence city centre. This station is just walking distance from the famous basilica with the same name.

Most of the trains arrive at Milan Centrale, located 4 km north of Milan Cathedral.

Florence to Milan by Bus

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

Taking the bus is the cheapest way to travel from Florence to Milan. Although travel time takes longer than the high-speed train, buses are still faster than the regional trains. The journey normally takes between 4-5 hours, depending on the traffic.

There are 2 bus companies for this route: Itabus and FlixBus. Both companies have several departures throughout the day.

Bus schedules from Florence to Milan

Bus OperatorScheduleDurationCosts
Itabus9x departure from
10:35 to 20:40
4 – 5 hours€12 ($13)
Check Bus Tickets
FlixBus13x departure from
00:05 to 20:05
4 – 5 hours€20 ($21.50)
Check Bus Tickets

Ticket prices start from €12 ($13), but they can still vary based on the bus departure time. You can check the full schedule on Omio and FlixBus websites.

Departure and arrival station

The buses mainly depart from Villa Constanza in Scandicci. This station is outside Florence city centre, so you still have to take a 10-minute taxi for around €25 ($27).

In Milan, the last stop for the buses is Lampugnano Bus Station, situated 10 km northwest of Milan city centre. There are also a few bus departures that drop passengers off at San Donato M3. This station is nearer to Milan Airport than the city centre.

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: 2

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 didn't meet your expectations.

Your feedback is very valueable to us

What was missing in this post? (TIP: If you want us to reply to your feedback, you can leave your email in this text box.)

About the author(s)

Ela is a storyteller, content producer, solo traveller and a mermaid-in-training. When she’s not in front of her laptop, you will find her barefoot and living her best tan on some island in the Philippines… Or exploring the depths of its seas as a budding freediver. An island girl at heart, she’ll be happy anywhere there is sea, sand, sun and coffee.

Based in Bali, Maarten’s passion for travel is undeniable. In 2016, he decided to quit his job as a stock analyst and started doing what he always dreamed of: travelling through South East Asia and helping other people plan their trips. When he is not working on Gecko Routes, you’ll find him surfing in the ocean or exploring the best gems of Indonesia.