There are 6 ways to get from San Romano to Milan by train (Trenitalia), bus, car, train, 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.
Train via Florence
best- Take the train from S.Romano-M.-S.Croce to Firenze S.M.N.train Re
- Take the train from Firenze S.M.N. to Milano Centraletrain Fr
3h 7m€36–83Bus
cheapest- Take the bus from Florence Villa Constanza Bus Station to Milano, San Donato M3bus N528 / ...
6h 14m€16–47Drive 312.9 km
- Drive from San Romano to Milancar 312.9 km
3h 15m€51–73Train, fly
- Take the train from S.Romano-M.-S.Croce to Firenze S.M.N.train
- Fly from Florence Peretola Airport (FLR) to Milan Linate Airport (LIN)plane FLR - LIN
5h 38m€119–243Train (Trenitalia)
- Take the train from Pisa Centrale to Milano Centraletrain Ic
5h 40m€34–75Train #2
- Take the train from Pisa Centrale to Milan Rogoredotrain Ec
7h€94–135
San Romano to Milan by train
Comparing Your Travel Options
The cheapest way to get from San Romano to Milan is to bus which costs €15 - €50 and takes 6h 14m.
The fastest way to get from San Romano to Milan is to train via Florence which takes 3h 7m and costs €35 - €85.
No, there is no direct bus from San Romano to Milan. However, there are services departing from Empoli and arriving at Milano, San Donato M3 via Florence Villa Constanza Bus Station. The journey, including transfers, takes approximately 6h 14m.
No, there is no direct train from San Romano to Milan. However, there are services departing from S.Romano-M.-S.Croce and arriving at Milano Centrale via Firenze S.M.N.. The journey, including transfers, takes approximately 3h 7m.
The distance between San Romano and Milan is 351 km. The road distance is 312.9 km.
The best way to get from San Romano to Milan without a car is to train via Florence which takes 3h 7m and costs €35 - €85.
It takes approximately 3h 7m to get from San Romano to Milan, including transfers.
San Romano to Milan bus services, operated by FlixBus, depart from Florence Villa Constanza Bus Station.
San Romano to Milan train services, operated by Trenitalia, depart from S.Romano-M.-S.Croce station.
The best way to get from San Romano to Milan is to train via Florence which takes 3h 7m and costs €35 - €85. Alternatively, you can bus, which costs €15 - €50 and takes 6h 14m.
What companies run services between San Romano, Tuscany, Italy and Milan, Italy?
You can take a train from S.Romano-M.-S.Croce to Milano Centrale via Firenze S.M.N. in around 3h 7m. Alternatively, FlixBus operates a bus from Florence Villa Constanza Bus Station to Milano, San Donato M3 every 4 hours. Tickets cost €25–40 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 28m
- When
- Every day
- Estimated price
- €150–220
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 37m
- When
- Every day
- Estimated price
- €170–600
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 27m
- When
- Every day
- Estimated price
- €110–650
Flights from Florence Peretola Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 5h 45m
- When
- Every day
- Estimated price
- €95–390
- Website
- lufthansa.com
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 37m
- When
- Every day
- Estimated price
- €170–600
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 27m
- When
- Every day
- Estimated price
- €110–650
Flights from Florence Peretola Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 50m
- When
- Every day
- Estimated price
- €150–220
- Website
- austrian.com
Flights from Florence Peretola Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €150–220
Flights from Florence Peretola Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 5h 45m
- When
- Every day
- Estimated price
- €95–390
- Website
- airdolomiti.it
Flights from Florence Peretola Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 40m
- When
- Monday to Saturday
- Estimated price
- €170–650
Flights from Florence Peretola Airport to Milan Linate Airport via Munich
- Ave. Duration
- 4h 25m
- When
- Saturday
- Estimated price
- €170–600
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from S.Romano-M.-S.Croce to Firenze S.M.N.
- Ave. Duration
- 51 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–8
- Website
- Trenitalia
Train from S.Romano-M.-S.Croce to Firenze S.M.N.
- Ave. Duration
- 51 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–8
- Website
- Trenitalia
Train from Pisa Centrale to Milano Centrale
- Ave. Duration
- 4h 25m
- Frequency
- Twice daily
- Estimated price
- €35–50
- Website
- Trenitalia
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–75
- Website
- Trenitalia Frecce
Train from Pisa Centrale to Milano Centrale
- Ave. Duration
- 3h 47m
- Frequency
- Twice daily
- Estimated price
- €40–70
- Website
- Trenitalia Frecce
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 2h 36m
- Frequency
- 4 times a day
- Estimated price
- €35–60
- Website
- Italo Treno
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Milano Centrale
- Ave. Duration
- 3h 54m
- Frequency
- Twice daily
- Estimated price
- €30–60
- Website
- Trenitalia Intercity
Train from Pisa Centrale to Milano Centrale
- Ave. Duration
- 4h 18m
- Frequency
- Every 3 hours
- Estimated price
- €30–60
- Website
- Trenitalia Intercity
Train from Pisa Centrale to Milan Rogoredo
- Ave. Duration
- 5h 27m
- Frequency
- Twice a week
- Estimated price
- €90–130
- Website
- Swiss Federal Railways (SBB CFF FFS)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 3h 25m
- Frequency
- Every 4 hours
- Estimated price
- €25–40
- Website
- Flixbus
- 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 S.p.A.
Bus from Florence Villa Constanza Bus Station to Milano, San Donato M3
- Ave. Duration
- 4h 10m
- Frequency
- Once daily
- Estimated price
- €15–27
- Website
- Itabus S.p.A.
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
5 incredible day trips from Florence by train
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
San Romano to Milan bus services, operated by FlixBus, arrive at Milano, San Donato M3 station.
San Romano to Milan train services, operated by Trenitalia, arrive at Firenze S.M.N. station.
Yes, the driving distance between San Romano to Milan is 313 km. It takes approximately 3h 15m to drive from San Romano to Milan.
Book your San Romano to Milan train tickets online with Omio.
Book your San Romano to Milan bus tickets online with Omio.
There are 13870+ hotels available in Milan.






























