Travel Information
Compare bus, train, and flight for Mainz to Milan
Omio recommends booking the bus 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 $41. For those with little time consider booking a flight which can get you there in 1h 19m. 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 $41, and a train costs an average of $222.
Distance: 315 miles (507 km)
Compare bus with
Most popular Bus | Train | Flight | Driving |
|---|---|---|---|
$66 Average price Cheapest | $226 Average price | $108 Average price | $204 Average price (fuel + tolls) |
12h 42m Average total duration 12h 12m Onboard + 30m Additional time* | 8h 34m Average total duration 8h 4m Onboard + 30m Additional time* | 4h 19m Average total duration Fastest 1h 19m Onboard + 3h 0m Additional time* | 7h 40m Average total duration (door-to-door) |
0.5 - 1.3kg CO2 emissions | 0.2 - 0.5kg CO2 emissions Lowest | 1.5 - 3.0kg CO2 emissions | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular train company | ![]() Most popular airline | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Mainz to Milan:
A bus is $42 (€34) less than a flight for this route with tickets for a flight from Mainz to Milan costing on average $108 (€87).
A bus is $160 (€129) less than a train for this route with tickets for a train from Mainz to Milan costing on average $226 (€182).
Other travel options to Milan take longer:
Train takes on average 8h 4m.
Bus takes on average 12h 12m.
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.
FlixBus7:10 AM12h05Mainz, Binger Schlag (Kurzzeitparkplatz)7:15 PMMilano, Autostazione Lampugnano$651One-way0 transfers
Cheapest
FlixBus7:10 AM12h05Mainz, Binger Schlag (Kurzzeitparkplatz)7:15 PMMilano, Autostazione Lampugnano$651One-way0 transfers
Fastest
DE43559:50 AM1h00Frankfurt am Main Airport10:50 AMMilan Malpensa Airport$2151One-way0 transfers
Other options
FlixBus · FlixBus4:00 PM14h30Mainz, Binger Schlag (Kurzzeitparkplatz)6:30 AMMilano, Autostazione Lampugnano$811One-way1 transfer
FlixBus · FlixBus10:40 PM12h00Mainz, Binger Schlag (Kurzzeitparkplatz)10:40 AMMilano, Autostazione Lampugnano$961One-way1 transfer
FlixBus · FlixBus · FlixBus4:00 PM18h15Mainz, Binger Schlag (Kurzzeitparkplatz)10:15 AMMilano, Milan Linate Airport$1351One-way2 transfers
EW8263:40 PM1h25Cologne Bonn Airport5:05 PMMilan Malpensa Airport$831One-way0 transfers
EC54288:20 PM1h10Frankfurt am Main Airport9:30 PMMilan Linate Airport$991One-way0 transfers
FR 55327:40 AM1h30Cologne Bonn Airport9:10 AMMilan Bergamo Orio al Serio Airport$1051One-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.
May 31
Jun 01
Jun 02
Jun 03
Jun 04
Jun 05
Jun 06
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 bus is $42 (€34) less than a flight for this route with tickets for a flight from Mainz to Milan costing on average $108 (€87).
A bus is $160 (€129) less than a train for this route with tickets for a train from Mainz to Milan costing on average $226 (€182).
Other travel options to Milan take longer:
Train takes on average 8h 4m.
Bus takes on average 12h 12m.
- Around 86 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, easyJet, ITA, Air Dolomiti to go to Milan by flight.
- Travel with Deutsche Bahn, Trenitalia, Süwex, Deutsche Bahn Regio (DB Regional), Nederlandse Spoorwegen (NS) to go to Milan by train.
- Travel with FlixBus to go to Milan by bus.
- 32 direct flights per day with Ryanair, Eurowings, easyJet, ITA, Air Dolomiti.
- 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


