Ulm to Milan
Rome2Rio compared 8 ways to get from Ulm to Milan. The best route is Bus, a distance of 331.891 km.
Bus
best- Take the bus from Ulm to Milano, Autostazione Lampugnanobus N77
6h 35m€30–55Train
- Take the train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhoftrain Re5 / ...
- Take the train from Friedrichsh. Stadtbahnhof to Singentrain Re3
- Take the train from Singen to Zürich HBtrain Ic
- Take the train from Zürich HB to Como S. Giovannitrain Ec
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
9h 27m€127–450Drive 428.2 km
- Drive from Ulm to Milancar 428.2 km
4h 27m€68–99Train, train to Munich International Airport, fly to Milan Linate Airport
- Take the train from Ulm Hauptbahnhof to München Hbftrain
- Take the train from Hauptbahnhof to Flughafen Münchentrain
- Fly from Munich International Airport (MUC) to Milan Linate Airport (LIN)plane MUC - LIN
5h 23m€116–355Train, bus
- Take the train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhoftrain Re3 / ...
- Take the bus from Bregenz bus station to Milano, Autostazione Lampugnanobus N77
7h 19m€48–133Train, ferry, bus
- Take the train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhoftrain Re5 / ...
- Take the ferry from Friedrichshafen Faehre to Romanshorn Autoquaiferry 197 / ...
- Take the bus from St. Gallen Lagerstrasse to Milano, Autostazione Lampugnanobus
9h 21m€58–141Train to Stuttgart Airport, fly to Milano Malpensa Airport, train
- Take the train from Ulm Hauptbahnhof to Hauptbahnhoftrain
- Fly from Stuttgart Airport (STR) to Milano Malpensa Airport (MXP)plane STR - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
5h 25m€87–232Train, train to Zurich Airport, fly to Milano Malpensa Airport
- Take the train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhoftrain
- Take the train from St. Margrethen Sg to Zuerich Flughafentrain
- Fly from Zurich Airport (ZRH) to Milano Malpensa Airport (MXP)plane ZRH - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
6h 45m€111–401
Ulm to Milan by bus
Questions & Answers
The cheapest way to get from Ulm to Milan is to bus which costs €30 - €55 and takes 6h 35m.
The fastest way to get from Ulm to Milan is to drive which takes 4h 27m and costs €65 - €100.
Yes, there is a direct bus departing from Ulm and arriving at Milano, Autostazione Lampugnano. Services depart once daily, and operate every day. The journey takes approximately 6h 35m.
No, there is no direct train from Ulm to Milan. However, there are services departing from Ulm Hauptbahnhof and arriving at Milano Porta Garibaldi via Friedrichsh. Stadtbahnhof, Singen, Zürich HB and Como S.Giovanni. The journey, including transfers, takes approximately 9h 27m.
The distance between Ulm and Milan is 428 km. The road distance is 428.2 km.
The best way to get from Ulm to Milan without a car is to bus which takes 6h 35m and costs €30 - €55.
The bus from Ulm to Milano, Autostazione Lampugnano takes 6h 35m including transfers and departs once daily.
Ulm to Milan bus services, operated by FlixBus, depart from Ulm station.
Ulm to Milan train services, operated by Deutsche Bahn Regio (DB Regional), depart from Ulm Hauptbahnhof station.
The best way to get from Ulm to Milan is to bus which takes 6h 35m and costs €30 - €55. Alternatively, you can train, which costs €120 - €450 and takes 9h 27m.
What companies run services between Ulm, Germany and Milan, Italy?
FlixBus operates a bus from Ulm to Milano, Autostazione Lampugnano once daily. Tickets cost €30–55 and the journey takes 6h 35m. Alternatively, you can take a train from Ulm Hauptbahnhof to Milano Porta Garibaldi via Friedrichsh. Stadtbahnhof, Singen, Zürich HB, and Como S.Giovanni in around 9h 27m.
- Website
- ita-airways.com
Flights from Munich International Airport to Milan Linate Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €80–600
Flights from Stuttgart Airport to Milano Malpensa Airport
- Ave. Duration
- 1h
- When
- Monday, Friday, and Sunday
- Estimated price
- €75–160
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €55–330
- Website
- lufthansa.com
Flights from Munich International Airport to Milan Linate Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €80–600
Flights from Stuttgart Airport to Milano Malpensa Airport via Munich International Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €130–600
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €55–330
- Website
- eurowings.com
Flights from Stuttgart Airport to Milano Malpensa Airport
- Ave. Duration
- 1h
- When
- Monday, Friday, and Sunday
- Estimated price
- €75–160
- Website
- airdolomiti.it
Flights from Munich International Airport to Milan Linate Airport
- Ave. Duration
- 1h 5m
- When
- Saturday
- Estimated price
- €140–600
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €100–160
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 5m
- Frequency
- Every 30 minutes
- Estimated price
- €20–30
- Website
- https://int.bahn.de/en
Train from Friedrichsh. Stadtbahnhof to Singen
- Ave. Duration
- 55 min
- Frequency
- Every 3 hours
- Estimated price
- €13–20
- Website
- https://int.bahn.de/en
Train from Hauptbahnhof to Flughafen München
- Ave. Duration
- 46 min
- Frequency
- Every 15 minutes
- Estimated price
- €8–12
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhof
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- €25–40
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 5m
- Frequency
- Every 30 minutes
- Estimated price
- €20–30
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 1h 5m
- Frequency
- Hourly
- Estimated price
- €17–26
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhof
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- €25–40
- Website
- https://int.bahn.de/en
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 1m
- Frequency
- 3 times a day
- Estimated price
- €19–75
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to München Hbf
- Ave. Duration
- 1h 13m
- Frequency
- Every 30 minutes
- Estimated price
- €27–100
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhof
- Ave. Duration
- 1h 41m
- Frequency
- 3 times a day
- Estimated price
- €23–90
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 1m
- Frequency
- 3 times a day
- Estimated price
- €19–75
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 46 min
- Frequency
- Every 30 minutes
- Estimated price
- €16–60
- Website
- https://int.bahn.de/en
Train from Ulm Hauptbahnhof to Lindau, Reutin Bahnhof
- Ave. Duration
- 1h 41m
- Frequency
- 3 times a day
- Estimated price
- €23–90
- Website
- https://int.bahn.de/en
- Phone
- +49 731 1550-0
- servicecenter@dbregiobus-rab.de
- Website
- meine-rab.de
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 16m
- Frequency
- 3 times a week
- Estimated price
- €14–18
- Schedules at
- meine-rab.de
Train from Friedrichsh. Stadtbahnhof to Singen
- Ave. Duration
- 1h 36m
- Frequency
- Twice a week
- Estimated price
- €10–13
- Schedules at
- meine-rab.de
Train from Ulm Hauptbahnhof to Friedrichsh. Stadtbahnhof
- Ave. Duration
- 1h 16m
- Frequency
- 3 times a week
- Estimated price
- €14–18
- Schedules at
- meine-rab.de
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 1h 54m
- Frequency
- Twice a week
- Estimated price
- €12–16
- Schedules at
- meine-rab.de
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Singen to Zürich HB
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- €24–75
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Estimated price
- €75–230
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 2m
- Frequency
- Once daily
- Estimated price
- €17–55
- Website
- https://www.sbb.ch/en
Train from St. Margrethen Sg to Zuerich Flughafen
- Ave. Duration
- 1h 7m
- Frequency
- Every 30 minutes
- Estimated price
- €35–120
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Ulm Hauptbahnhof to München Hbf
- Ave. Duration
- 1h 12m
- Frequency
- 3 times a day
- Estimated price
- €16–35
- Website
- https://www.ns.nl/en
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 46 min
- Frequency
- Once daily
- Estimated price
- €9–21
- Website
- https://www.ns.nl/en
- Phone
- +49 821 899 825 44
- servus@arverio.de
- Website
- arverio-by.de
Train from Ulm Hauptbahnhof to München Hbf
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Schedules at
- arverio-by.de
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Ulm Hauptbahnhof to München Hbf
- Ave. Duration
- 1h 23m
- Frequency
- Twice daily
- Estimated price
- €30–55
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +43 1 89900
- service@westbahn.at
- Website
- westbahn.at
Train from Ulm Hauptbahnhof to München Hbf
- Ave. Duration
- 1h 21m
- Frequency
- 6 times a week
- Estimated price
- €27–50
- Website
- https://westbahn.at/en/
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 57 min
- Frequency
- Every 4 hours
- Estimated price
- €16–29
- Website
- https://westbahn.at/en/
- Phone
- +49 711 400 534 44
- stuttgart@arverio.de
- Website
- arverio-bw.de
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 1h 33m
- Frequency
- Every 30 minutes
- Estimated price
- €15–29
- Schedules at
- arverio-bw.de
- 2nd Class Ticket
- €15–19
- 1st Class Ticket
- €20–29
- Phone
- +49 711 400 534 44
- stuttgart@arverio.de
- Website
- arverio-by.de
Train from Ulm Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 1h 30m
- Frequency
- Hourly
- Estimated price
- €15–21
- Schedules at
- arverio-by.de
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from St. Margrethen Sg to Zuerich Flughafen
- Ave. Duration
- 1h 7m
- Frequency
- Every 3 hours
- Estimated price
- €9–13
- Schedules at
- sbb-deutschland.de
- Phone
- +43 (0) 5 1717
- Website
- oebb.at
Train from St. Margrethen Sg to Zuerich Flughafen
- Ave. Duration
- 1h 7m
- Frequency
- Twice daily
- Estimated price
- €22–40
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Ulm to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h 35m
- Frequency
- Once daily
- Estimated price
- €30–55
- Website
- https://www.flixbus.co.uk
Bus from Bregenz bus station to Milano, Autostazione Lampugnano
- Ave. Duration
- 4h 25m
- Frequency
- Once daily
- Estimated price
- €23–40
- Website
- https://www.flixbus.co.uk
- Phone
- +420 222 222 221
- info@regiojet.com
- Website
- regiojet.com
Bus from St. Gallen Lagerstrasse to Milano, Autostazione Lampugnano
- Ave. Duration
- 5h 25m
- Frequency
- 3 times a week
- Estimated price
- €29–45
- Website
- https://regiojet.com/
- Phone
- +49 (0) 7531 3640-0
- info@bsb.de
- Website
- bsb.de
Ferry from Friedrichshafen Faehre to Romanshorn Autoquai
- Ave. Duration
- 46 min
- Frequency
- Hourly
- Estimated price
- €9–12
- Schedules at
- bsb.de
- Phone
- +41 71 466 78 88
- info@sbsag.ch
- Website
- bodensee-schiffe.ch
Ferry from Friedrichshafen Faehre to Romanshorn Autoquai
- Ave. Duration
- 46 min
- Frequency
- Every 4 hours
- Schedules at
- bodensee-schiffe.ch
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
Ulm to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Ulm to Milan train services, operated by Deutsche Bahn Regio (DB Regional), arrive at Friedrichsh. Stadtbahnhof station.
Yes, the driving distance between Ulm to Milan is 428 km. It takes approximately 4h 27m to drive from Ulm to Milan.
Book your Ulm to Milan train tickets online with Omio.
Book your Ulm to Milan bus tickets online with Omio and FlixBus.
There are 14609+ hotels available in Milan.





















































