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 $40. 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 $40, and a train costs an average of $217.
Distance: 315 miles (507 km)
Compare bus with
Most popular Bus | Train | Flight | Driving |
|---|---|---|---|
$64 Average price Cheapest | $220 Average price | $106 Average price | $199 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 $41 (€34) less than a flight for this route with tickets for a flight from Mainz to Milan costing on average $106 (€87).
A bus is $156 (€129) less than a train for this route with tickets for a train from Mainz to Milan costing on average $220 (€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$681One-way0 transfers
Cheapest
FlixBus7:10 AM12h05Mainz, Binger Schlag (Kurzzeitparkplatz)7:15 PMMilano, Autostazione Lampugnano$681One-way0 transfers
Fastest
U254049:10 AM1h10Frankfurt am Main Airport10:20 AMMilan Linate Airport$1271One-way0 transfers
Other options
ICE 711 · ECE 1517:46 AM8h07Mainz Hbf3:53 PMMilan Centrale$2061One-way1 transfer
FlixBus · FlixBus · FlixBus4:20 PM17h55Mainz, Binger Schlag (Kurzzeitparkplatz)10:15 AMMilano, Milan Linate Airport$901One-way2 transfers
FlixBus · FlixBus4:20 PM16h40Mainz, Binger Schlag (Kurzzeitparkplatz)9:00 AMMilano, Autostazione Lampugnano$921One-way1 transfer
FlixBus · FlixBus10:40 PM14h40Mainz, Binger Schlag (Kurzzeitparkplatz)1:20 PMMilano, Autostazione Lampugnano$951One-way1 transfer
U254288:10 PM1h10Frankfurt am Main Airport9:20 PMMilan Linate Airport$1271One-way0 transfers
FR 55505:45 AM1h30Cologne Bonn Airport7:15 AMMilan Bergamo Orio al Serio Airport$1631One-way0 transfers
DE43599:50 PM1h10Frankfurt am Main Airport11:00 PMMilan Malpensa Airport$1831One-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.
Jul 15
Jul 16
Jul 17
Jul 18
Jul 19
Jul 20
Jul 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 bus is $41 (€34) less than a flight for this route with tickets for a flight from Mainz to Milan costing on average $106 (€87).
A bus is $156 (€129) less than a train for this route with tickets for a train from Mainz to Milan costing on average $220 (€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 FlixBus to go to Milan by bus.
- 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.
- 1 direct buses per day with FlixBus.
- 32 direct flights per day with Ryanair, Eurowings, easyJet, ITA, Air Dolomiti.
Travelling from Mainz to Milan: related information
Here are some other resources that might have the information you need

