The cheapest and fastest trains from Milan to Lucerne
Cheapest price
$92
Average price
$103
Fastest journey
2 h 49 m
Average duration
2 h 49 m
Trains per day
2
Distance
189 km
The best way to find a cheap train ticket from Milan to Lucerne is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Lucerne will cost around $103 if you buy it on the day, but you can find cheap train tickets today for only $92.
To travel from Milan to Lucerne you need to make at least 3 changes.
B 523 520 | 520 · S 10 25116 | 25116 · EC 14 | 14 · IR VAE 2016 | 2016
B 523 516 | 516 · S 10 25114 | 25114 · EC 12 | 12 · IR VAE 2014 | 2014
B 523 520 | 520 · S 10 25116 | 25116 · EC 14 | 14 · IR VAE 2016 | 2016
B 523 516 | 516 · S 10 25114 | 25114 · EC 12 | 12 · IR VAE 2014 | 2014Travel Information
Compare train, coach and flight for Milan to Lucerne
Omio recommends booking the train as it is the most popular option from Milan to Lucerne among Omio's users. If you are prioritising price take the coach with prices starting from $20. For those with little time consider booking a flight which can get you there in 1h 45m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.1 - 0.2kg. The ticket price range depends on the travel mode: a coach costs an average of $20, and a flight costs an average of $48.
Distance: 189 km
Compare train with
Most popular Train | Coach | Flight |
|---|---|---|
$80 Average Price | $30 Average Price Cheapest | $91 Average Price |
3h 25m Average total duration 2h 55m Onboard + 30m Additional time* | 4h 8m Average total duration 3h 38m Onboard + 30m Additional time* | 4h 45m Average total duration Fastest 1h 45m Onboard + 3h 0m Additional time* |
0.1 - 0.2kg CO2 emissions Lowest | 0.2 - 0.5kg CO2 emissions | 0.6 - 1.1kg 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.
Live departures
Milan to Lucerne train times
The table below shows live departures for Milan to Lucerne trains for today, Saturday, 14 March. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
S 40 25474 | 25474 · S 10 25128 | 25128 · EC 20 | 20 · IR VAE 2028 | 2028 | 2:53 pm Stabio station | 2h28 | 5:21 pm Lucerne station | 3 changes | |
S 10 25128 | 25128 · EC 20 | 20 · IR VAE 2028 | 2028 | 2:57 pm Balerna station | 2h24 | 5:21 pm Lucerne station | 2 changes | |
EC 20 | 20 · IR VAE 2028 | 2028 | 3:05 pm Chiasso station | 2h16 | 5:21 pm Lucerne station | 1 change | |
EuroCity 22 | 3:10 pm Milan Centrale | 2h32 | 5:42 pm Arth-Goldau | 0 changesdirect | |
EuroCity 22 | 3:10 pm Milan Centrale | 2h50 | 6:00 pm Zug station | 0 changesdirect | |
S 50 25596 | 25596 · IC 2 886 | 886 · S 3 21368 | 21368 | 3:23 pm Stabio station | 2h30 | 5:53 pm Lucerne station | 2 changes | |
S 10 25196 | 25196 · IC 2 886 | 886 · S 3 21368 | 21368 | 3:23 pm Balerna station | 2h30 | 5:53 pm Lucerne station | 2 changes | |
S 50 25596 | 25596 · IC 2 886 | 886 · IR 26 2332 | 2332 | 3:23 pm Stabio station | 2h18 | 5:41 pm Lucerne station | 2 changes | |
S 10 25196 | 25196 · IC 2 886 | 886 · IR 26 2332 | 2332 | 3:23 pm Balerna station | 2h18 | 5:41 pm Lucerne station | 2 changes | |
RE 80 25524 | 25524 · IC 2 886 | 886 · IR 26 2332 | 2332 | 3:34 pm Chiasso station | 2h07 | 5:41 pm Lucerne station | 2 changes | |
RE 80 25524 | 25524 · IC 2 886 | 886 · S 3 21368 | 21368 | 3:34 pm Chiasso station | 2h19 | 5:53 pm Lucerne station | 2 changes | |
S 40 25476 | 25476 · S 10 25130 | 25130 · EC 22 | 22 · IR VAE 2030 | 2030 | 3:53 pm Stabio station | 2h28 | 6:21 pm Lucerne station | 3 changes | |
S 10 25130 | 25130 · EC 22 | 22 · IR VAE 2030 | 2030 | 3:57 pm Balerna station | 2h24 | 6:21 pm Lucerne station | 2 changes | |
EC 22 | 22 · IR VAE 2030 | 2030 | 4:05 pm Chiasso station | 2h16 | 6:21 pm Lucerne station | 1 change | |
EuroCity 24 | 4:10 pm Milan Centrale | 2h32 | 6:42 pm Arth-Goldau | 0 changesdirect | |
EuroCity 24 | 4:10 pm Milan Centrale | 2h50 | 7:00 pm Zug station | 0 changesdirect | |
S 10 25178 | 25178 · IC 21 688 | 688 | 4:23 pm Balerna station | 2h18 | 6:41 pm Lucerne station | 1 change | |
S 50 25578 | 25578 · IC 21 688 | 688 | 4:23 pm Stabio station | 2h18 | 6:41 pm Lucerne station | 1 change | |
RE 80 25526 | 25526 · IC 21 688 | 688 | 4:34 pm Chiasso station | 2h07 | 6:41 pm Lucerne station | 1 change | |
S 40 25478 | 25478 · S 10 25132 | 25132 · EC 24 | 24 · IR VAE 2032 | 2032 | 4:53 pm Stabio station | 2h28 | 7:21 pm Lucerne station | 3 changes | |
S 10 25132 | 25132 · EC 24 | 24 · IR VAE 2032 | 2032 | 4:57 pm Balerna station | 2h24 | 7:21 pm Lucerne station | 2 changes | |
EC 24 | 24 · IR VAE 2032 | 2032 | 5:05 pm Chiasso station | 2h16 | 7:21 pm Lucerne station | 1 change | |
EuroCity 306 | 5:10 pm Milan Centrale | 2h32 | 7:42 pm Arth-Goldau | 0 changesdirect | |
EuroCity 306 | 5:10 pm Milan Centrale | 2h50 | 8:00 pm Zug station | 0 changesdirect | |
S 50 25580 | 25580 · IC 2 890 | 890 · IR 26 2336 | 2336 | 5:23 pm Stabio station | 2h18 | 7:41 pm Lucerne station | 2 changes | |
S 10 25180 | 25180 · IC 2 890 | 890 · IR 26 2336 | 2336 | 5:23 pm Balerna station | 2h18 | 7:41 pm Lucerne station | 2 changes | |
RE 80 25528 | 25528 · IC 2 890 | 890 · IR 26 2336 | 2336 | 5:34 pm Chiasso station | 2h07 | 7:41 pm Lucerne station | 2 changes | |
S 40 25480 | 25480 · S 10 25134 | 25134 · EC 306 | 306 · IR VAE 2034 | 2034 | 5:53 pm Stabio station | 2h28 | 8:21 pm Lucerne station | 3 changes | |
S 10 25134 | 25134 · EC 306 | 306 · IR VAE 2034 | 2034 | 5:57 pm Balerna station | 2h24 | 8:21 pm Lucerne station | 2 changes | |
EC 306 | 306 · IR VAE 2034 | 2034 | 6:05 pm Chiasso station | 2h16 | 8:21 pm Lucerne station | 1 change | |
EuroCity 126 | 6:10 pm Milan Centrale | 2h32 | 8:42 pm Arth-Goldau | 0 changesdirect | |
EuroCity 126 | 6:10 pm Milan Centrale | 2h50 | 9:00 pm Zug station | 0 changesdirect | |
S 50 25582 | 25582 · IC 21 692 | 692 | 6:23 pm Stabio station | 2h18 | 8:41 pm Lucerne station | 1 change | |
S 10 25182 | 25182 · IC 21 692 | 692 | 6:23 pm Balerna station | 2h18 | 8:41 pm Lucerne station | 1 change | |
RE 80 25530 | 25530 · IC 21 692 | 692 | 6:34 pm Chiasso station | 2h07 | 8:41 pm Lucerne station | 1 change | |
S 40 25482 | 25482 · S 10 25136 | 25136 · EC 126 | 126 · S 3 21382 | 21382 | 6:53 pm Stabio station | 2h28 | 9:21 pm Lucerne station | 3 changes | |
S 10 25136 | 25136 · EC 126 | 126 · S 3 21382 | 21382 | 6:57 pm Balerna station | 2h24 | 9:21 pm Lucerne station | 2 changes | |
EC 126 | 126 · S 3 21382 | 21382 | 7:05 pm Chiasso station | 2h16 | 9:21 pm Lucerne station | 1 change | |
EuroCity 28 | 7:10 pm Milan Centrale | 2h50 | 10:00 pm Zug station | 0 changesdirect | |
EuroCity 28 | 7:10 pm Milan Centrale | 2h32 | 9:42 pm Arth-Goldau | 0 changesdirect | |
S 50 25584 | 25584 · IC 2 894 | 894 · IR 26 2340 | 2340 | 7:23 pm Stabio station | 2h18 | 9:41 pm Lucerne station | 2 changes | |
S 10 25184 | 25184 · IC 2 894 | 894 · IR 26 2340 | 2340 | 7:23 pm Balerna station | 2h18 | 9:41 pm Lucerne station | 2 changes | |
S 50 25584 | 25584 · IC 2 894 | 894 · S 3 21384 | 21384 | 7:23 pm Stabio station | 2h30 | 9:53 pm Lucerne station | 2 changes | |
S 10 25184 | 25184 · IC 2 894 | 894 · S 3 21384 | 21384 | 7:23 pm Balerna station | 2h30 | 9:53 pm Lucerne station | 2 changes | |
RE 80 25532 | 25532 · IC 2 894 | 894 · S 3 21384 | 21384 | 7:34 pm Chiasso station | 2h19 | 9:53 pm Lucerne station | 2 changes | |
RE 80 25532 | 25532 · IC 2 894 | 894 · IR 26 2340 | 2340 | 7:34 pm Chiasso station | 2h07 | 9:41 pm Lucerne station | 2 changes | |
| Sunday, 15 March | |||||
B 523 516 | 516 · S 10 25114 | 25114 · EC 12 | 12 · IR VAE 2014 | 2014 | 7:32 am Milan | 2h49 | 10:21 am Lucerne station | 3 changes | |
B 523 520 | 520 · S 10 25116 | 25116 · EC 14 | 14 · IR VAE 2016 | 2016 | 8:32 am Milan | 2h49 | 11:21 am Lucerne station | 3 changes | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Milan to Lucerne by train, coach or flight
Compare train, coach 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.
15 Mar
16 Mar
17 Mar
18 Mar
19 Mar
20 Mar
21 Mar
22 Mar
23 Mar
24 Mar
25 Mar
26 Mar
27 Mar
28 Mar
29 Mar
30 Mar
31 Mar
01 Apr
02 Apr
03 Apr
04 Apr
Why should you book Milan to Lucerne trains with Omio?
Why book with Omio vs Trenitalia?
- Compare with other providers: On Omio, you can not only buy tickets for Trenitalia, but also compare tickets for the likes of SBB or Trenitalia EuroCity to find the best option for your trip from Milan to Lucerne.
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Trenitalia with all available travel options, which are train, bus and flight to ensure you get the best deal for traveling from Milan to Lucerne.
Why book with Omio over Wanderu?
- Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Milan to Lucerne.
How far in advance should I book train tickets from Milan to Lucerne?
Journey information
Overview: Train from Milan to Lucerne
Trains from Milan to Lucerne run on average 26 times per day, taking around 2h 55m. Cheap train tickets for this journey start at $57 but you can travel from only $20 by coach.
There are 20 trains per day. The earliest train runs at 00:23, the last at 23:18. The fastest train covers the 189 km distance in 2h 7m.
Distance 189 km |
Average train duration 2h 55m |
Cheapest ticket price $57 |
Trains per day 26 |
Direct trains 20 |
Fastest train 2h 7m |
First train 00:23 |
Last train 23:18 |
Train companies: Trenitalia, SBB, Trenitalia EuroCity from Milan to Lucerne trainsTrenitalia, SBB, Trenitalia EuroCity trains will get you between Milan and Lucerne from $20. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Trenitalia
SBB
Trenitalia EuroCity
FAQs: Milan to Lucerne train
Find answers to the most common questions about traveling from Milan to Lucerne by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Lucerne, this guide helps you travel smarter and with confidence.

popular train stations
Important Stations and Airports in Milan and Lucerne
- Mon - Sun: 05:50 - 22:20
- Free WiFi in the station.
- Provided by KiPoint and located on the ground floor, on the side of Piazza Luigi di Savoia. It is open every day from 06:00 to 23:00.
- Venchi
- Panzera Coffee
- Burger King
- Bar Motta
- Caffè Napoli
- VyTA Boulangerie
- Spontini
- Starbucks
- Dispensa Emilia
- McDonald's
- & many more
- Station is wheelchair accessible, has elevators and the Sala Blu, Trenitalia's office of assistance for disabled travelers, is next to Platform 4.
- Glam Hotel Milano
- NYX MIlan
- iQ Hotel Milano
- Mon - Sun: 05:50 - 22:20
- Located next to the ticket office on the ground floor in the shopping gallery.
- Metro lines: M2 (green), M3 (yellow)
- Tram lines: 1
- Bus lines: 5, 9, 10, 42, 81, 87, 152, 728, N26, NM2, NM3, Air Bus, Orio Shuttle
- Train lines: FR, FB, EC, Thello, XP2, R28, IC, ICN, RV, R, Regio, Italo
- 6:00 AM - 10:00 PM Monday - Sunday
- Free
- Parking is available near the station with access from Via Rombon.
- Ristorante Pizzeria Il Girasole
- Osteria Lambrate
- Outside the main entrance.
- Elevators, ramps.
- €1
- MEININGER Milano Lambrate
- Hotel Gamma
- Hotel Lugano
- Located in the main hall
- Avis
- Europcar
- Located in the main hall
- Free
- Hall 1: main entrance, platform 1-7 for trains to various destinations
- Hall 2: Metro connections
- Metro: Line M2
- Bus: Several lines available
- Tram: Line 19
- 6:00 AM - 10:00 PM Monday - Sunday
- Free
- Parking is available near the station, accessible from Viale Certosa.
- Burger King
- Ristorante Pizzeria La Certosa
- Outside the main entrance.
- Ramps, restrooms.
- €1
- Hotel Raffaello
- Hotel Mirage
- Klima Hotel Milano Fiere
- Located near the main entrance
- Free
- Bus: Several lines available
- Tram: Line 14
- 6:00 AM - 9:00 PM Monday - Sunday
- Free
- The car park is open 7 days a week, 24 hours a day. Access via Zentralstrasse.
- Restaurant La Cucina
- Restaurant Bellini Locanda Ticinese
- Outside the main entrance.
- CHF 1
- Hotel Monopol Luzern
- Waldstätterhof Swiss Quality Hotel
- Hotel Central Luzern
- Located in the main hall
- Located in the main hall
- 420 places, covered
- Avis
- Europcar
- Hertz
- Located in the main hall
- Free
- Hall 1: main entrance, platform 1-9 for trains to Germany, Italy, and regional destinations
- Hall 2: S-Bahn platforms
- Hall 3: Boat connections
- Bus: Several lines available
- Boat: Lake Lucerne boats
- Train: SBB services to various destinations
Most popular train connections from Milan
More options for your journey from Milan to Lucerne
Here are some other resources that might have the information you need



