Compare prices from hundreds of train and bus companies

Join millions of people who use us every day

Travel to thousands of destinations in 45 countries

Travelling from Milan to Florence by train in 1h 37m

Thinking of spending some time in the Tuscan capital and need more information on how to take the train from Milan to Florence? You’ve come to the right place! 

On average, the train journey from Milan to Florence takes around 2h 22m, with around 64 trains running on this popular route each day. If you want to travel from Milan to Florence quickly, the fastest Frecciarossa and Italo services can take just 1h 37m. As there are direct trains available, you don’t need to worry about changing along the journey either.  

When travelling on this route, your train will depart from Milano Centrale station, whizz through 155 miles of idyllic Italian countryside and arrive at Firenze Santa Maria Novella station. If you feel like travelling in luxury, upgrade to First Class and enjoy a gourmet meal served to your seat, as well as free WiFi and luxury reclining armchairs.  

Once you’ve arrived in Florence, you can start sipping delicious Tuscan wine and eating Bistecca alla Fiorentina in no time! Then, you can start exploring the city’s landmarks, including the beautiful the Cathedral of Santa Maria del Fiore and Ponte Vecchio – a Roman bridge famed for the rows of shops adorning its sides. If you need more inspiration, check out our guide to the best things to do in Florence.  

Ready to go? Start your search for cheap train tickets from Milan to Florence today in our Journey Planner at the top of the page. For more information, keep reading for FAQs, train times and ticket prices.  

Milan to Florence by train

It takes an average of 2h 16m to travel from Milan to Florence by train, over a distance of around 155 miles (249 km). There are normally 46 trains per day traveling from Milan to Florence and tickets for this journey start from $10.33 when you book in advance.
Journey timeFrom 1h 44m
PriceFrom $10.33
Distance155 miles (249 km)
Frequency46 trains per day
First train05:20
Last train21:50
Departure stationMilan
Arrival stationFlorence
ChangesDirect trains available
Train and bus operatorsAutolinee Federico, Marino, Itabus, BlaBlaCar Bus, Trenitalia, Flixbus, Italo, Calanda Viaggi (Bus)

Milan to Florence train times

Check out the next trains departing from Milan to Florence for mardi oct. 11 2022. For the full train timetable/schedule, or to search for a later time or date, click here.
10:50 12:35 1h 45m, direct
11:20 13:04 1h 44m, direct
11:50 13:35 1h 45m, direct
12:20 14:04 1h 44m, direct
12:40 14:35 1h 55m, direct
12:58 14:54 1h 56m, 1 change
13:20 15:04 1h 44m, direct
13:30 15:39 2h 9m, 1 change
14:20 16:04 1h 44m, direct
14:38 16:39 2h 1m, 1 change

Frecciarossa, Italo, Trenitalia and Intercity trains from Milan to Florence

You can travel from Milan to Florence on Frecciarossa, Italo, Trenitalia and Intercity trains. When you search for times and tickets, we might also show you some other options with multiple connections or operators if they’re available.

Frecciarossa trains are Trenitalia's flagship high-speed trains capable of reaching speeds of up to 186 mph (300 km/h). The "red arrow" trains are distinguished by their comfort, their ultra-modern design and their reduced impact on the environment. All Frecciarossa trains are equipped with a food carriage, a free WiFi connection and four levels of service – Standard, Premium (with drinks and welcome snacks served on arrival, as well as a morning newspaper), Business (with drinks and snacks, morning newspaper and larger seats) and Executive (with Fast Track, access to FrecciaClub lounges in train selected stations, and gourmet meals served to your seat). From December 2021, you can also travel with Frecciarossa from Milan to Paris via Turin, Modane and Chambéry. The trains are operated by Trenitalia France and have 4 levels of service - Standard, Business, Executive and Meeting Room - and two types of carriages: Silence Area, for those who want to travel in total tranquillity, and Allegro Area, for those who want to chat with their fellow passengers.

Italo is a high-speed train operator that runs services between many of the major cities across Italy. All Italo trains are modern, air conditioned, and have free WiFi available for all travellers. There are four comfort classes, or "ambiances", as Italo like to call them – Smart (the cheapest price), Comfort (with wider seats and extra legroom), Prima (with a welcome selection of food and drink, fast track boarding and extra space), and Executive Club (with all Prima services, extra-wide seats, access to Italo Club lounges and personal entertainment screens at your seat).

Trenitalia is the national railway company of Italy, with a fleet including high-speed trains (Frecciarossa, Frecciargento and Frecciabianca), Intercity and Intercity night trains and regional trains. Trenitalia offers discounts and special promotions on selected routes, two types of discounted tickets for young people under 30 and people over 60.

PhotoChris0693, under licence CC3.0

Trenitalia's Intercity trains run on standard lines outside the high-speed network, offering more than 90 trains a day that guarantee long and medium distance connections, ensuring wide coverage of the rail network. All Intercity trains are modern and comfortable with plenty of seats, retractable tables, power sockets, air conditioning, courtesy lights and plenty of luggage space. Intercity Night trains allow you to travel overnight in cabins with beds, berths or seating.

Cheap train tickets from Milan to Florence

The price of train tickets from Milan to Florence starts at $10.33 one-way for a Standard Class ticket if you book in advance. Booking on the day is usually more expensive and costs can vary depending on the time of day, route or class.

Book in advance

Most of the train companies across Europe release their tickets around three to six months in advance, many of which can be cheaper the earlier you book. If you know the dates you want to travel, you may be able to find some cheaper train tickets from Milan to Florence by booking early.§

Be flexible with your travel times

Many of the train services in Europe are also popular commuter services, lots of train companies increase ticket prices during “peak hours” (generally between 06:00 – 10:00 and 15:00 – 19:00 on weekdays). If you can, consider travelling outside of peak hours to find lower priced tickets.

Choose a slower or connecting train

On some of the busier routes, you might also have the option to take a slower or connecting train. It may take a little longer than some high-speed or direct services, but if you have a little extra time on your hands, you might find a cheaper fare. Plus, you'll have more time to enjoy the view of the countryside!

Look out for special deals

Take a look at our handy guides to find out when train operators release their special deals and offers to see if you can find cheap European train tickets for your journey.

For specific information about how to get your hands on cheap tickets, check out our European train tickets hub.

§Some train companies may not offer any Advance ticket types or cheaper deals for early bookings. On rare occasions, train companies may choose to release special offers closer to the date on last-minute or late-release tickets. This is dependent on the individual train operating company you travel with.

FAQs for Milan to Florence

Want to know more about your journey from Milan to Florence? We've compiled some of the most frequently asked questions by our customers to help you plan your journey.

How long does the train from Milan to Florence take?

The average journey time by train between Milan and Florence is 2 hours and 16 minutes, with around 46 trains per day. The journey time may be longer on weekends and holidays, so use our Journey Planner on this page to search for a specific travel date.

What's the fastest journey time between Milan and Florence by train?

The fastest journey time by train from Milan to Florence is 1 hour and 44 minutes.

How much does the train from Milan to Florence cost?

Train tickets from Milan to Florence can start from as little as $10.33 when you book in advance and are usually more expensive when purchased on the day. Prices can also vary depending the time of day, route and class you book.

Is there a direct train from Milan to Florence?

Yes, it is possible to travel from Milan to Florence without having to change trains. There are 31 direct trains from Milan to Florence each day. Though there may be fewer direct services available depending on your exact departure date.

What time does the first train from Milan to Florence leave?

The first train from Milan to Florence leaves at 05:20. Times and services may vary during weekends and holidays.

What time does the last train from Milan to Florence leave?

The last train from Milan to Florence leaves at 21:50. Trains that depart in the early morning hours or very late evening may be sleeper services, time and services may also vary during weekends and holidays.

What's the distance between Milan and Florence by train?

Trains travelling from Milan to Florence cover a distance of around 155 miles (249 km) during the journey.

Looking for more information?

If you’re looking for the return train journey, check out trains from Florence to Milan.
The information provided is calculated based on scheduled train services for Milan to Florence for a typical week day using timetable data for 10/11/2022. On weekends, holidays or other exceptional times, fewer services may be available. The fare range provided has been found by our customers on Trainline on 11/15/2022 for travel on 11/15/2022 and for adult tickets in economy, discount cards and coach journeys excluded.

Europe’s leading train and coach app

We help customers across Europe make more than 172,000 smarter journeys every day.