Travel Information
Compare bus, train, and flight for Mainz to Milan
Omio recommends booking the train as it is the most popular option from Mainz to Milan among Omio's users. If you are prioritising price take the bus with prices starting from $42. For those with little time consider booking a flight which can get you there in 1h 20m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.2 - 0.5kg. The ticket price range depends on the travel mode: a bus costs an average of $42, and a train costs an average of $269.
Distance: 315 miles (507 km)
Compare train with
Most popular Train | Bus | Flight |
|---|---|---|
$269 Average price | $77 Average price Cheapest | $102 Average price |
8h 37m Average total duration 8h 7m Onboard + 30m Additional time* | 12h 44m Average total duration 12h 14m Onboard + 30m Additional time* | 4h 20m Average total duration Fastest 1h 20m Onboard + 3h 0m Additional time* |
0.2 - 0.5kg CO2 emissions Lowest | 0.5 - 1.3kg CO2 emissions | 1.5 - 3.0kg CO2 emissions |
![]() Most popular train company | ![]() Most popular bus company | ![]() Most popular airline |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Travel optionsfrom Mainz to Milan
How to get from Mainz to Milan by train, bus or flight.
Our recommendation
The best way to travel from Mainz to Milan is by taking a bus because it’s the best combination of price and speed.
FlixBus · FlixBus10:40 PM14h40Mainz, Binger Schlag (Kurzzeitparkplatz)1:20 PMMilano, Autostazione Lampugnano$771One-way1 transfer
Cheapest
FlixBus · FlixBus10:40 PM14h40Mainz, Binger Schlag (Kurzzeitparkplatz)1:20 PMMilano, Autostazione Lampugnano$771One-way1 transfer
Fastest
U254288:10 PM1h10Frankfurt am Main Airport9:20 PMMilan Linate Airport$2341One-way0 transfers
Other options
FlixBus · FlixBus · FlixBus4:00 PM18h30Mainz, Binger Schlag (Kurzzeitparkplatz)10:30 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)$841One-way2 transfers
FlixBus · FlixBus · FlixBus4:00 PM17h10Mainz, Binger Schlag (Kurzzeitparkplatz)9:10 AMMilano, Autostazione Lampugnano$961One-way2 transfers
FlixBus · FlixBus · FlixBus4:00 PM18h15Mainz, Binger Schlag (Kurzzeitparkplatz)10:15 AMMilano, Milan Linate Airport$1011One-way2 transfers
EW8246:45 AM1h25Cologne Bonn Airport8:10 AMMilan Malpensa Airport$1411One-way0 transfers
FR 55505:45 AM1h30Cologne Bonn Airport7:15 AMMilan Bergamo Orio al Serio Airport$1811One-way0 transfers
U254049:10 AM1h10Frankfurt am Main Airport10:20 AMMilan Linate Airport$3361One-way0 transfers
Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
Compare bus, train, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Apr 15
Apr 16
Apr 17
Apr 18
Apr 19
Apr 20
Apr 21
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Mainz to Milan
Travel to Milan easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Mainz to Milan.

This is compared to other travel options from Mainz to Milan:
A flight is $18 (€14) less than a bus for this route with tickets for a bus from Mainz to Milan costing on average $42 (€33).
A flight is $245 (€195) less than a train for this route with tickets for a train from Mainz to Milan costing on average $269 (€214).
Other travel options to Milan take longer:
Train takes on average 8h 4m.
Bus takes on average 11h 35m.
- Around 89 flights per day.
- Around 4 buses per day.
- Around 1 trains per day.
However, we recommend checking specific travel dates for your route between Mainz and Milan as scheduled services by bus, train, and flight can vary by season or day of the week.
- Flights mostly depart from Frankfurt am Main Airport and arrive in Milan Malpensa Airport.
- Trains mostly depart from Mainz Hbf and arrive in Milan Centrale.
- Buses mostly depart from Mainz, Binger Schlag (Kurzzeitparkplatz) and arrive in Milano, Autostazione Lampugnano.
- Travel with Ryanair, Eurowings, ITA, easyJet, Air Dolomiti to go to Milan by flight.
- Travel with FlixBus to go to Milan by bus.
- Travel with Deutsche Bahn, Trenitalia, Süwex to go to Milan by train.
- 32 direct flights per day with ITA.
- 1 direct buses per day with FlixBus.
Travelling from Mainz to Milan: related information
Here are some other resources that might have the information you need


