The cheapest and fastest trains from Milan to Lucerne
Cheapest price
€56
Average price
€78
Fastest journey
2 h 7 m
Average duration
2 h 11 m
Trains per day
49
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 traveling at rush hour.
The average ticket from Milan to Lucerne will cost around €78 if you buy it on the day, but the cheapest tickets can be found for only €56.
Of the 49 trains that leave Milan for Lucerne on Tue, May 26, 28 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Tue, May 26 the direct trains cover the 189 km distance in an average of 2 h 11 m but if you time it right, some trains will get you there in just 2 h 7 m .
On Tue, May 26 the slowest trains will take 2 h 17 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
S 50 25550 | 25550 · IC 2 866 | 866 · IR 26 2312 | 23126:23 AM2h18Stabio station8:41 AMLucerne station€561One-way2 transfers
S 10 25156 | 25156 · IC 2 866 | 866 · IR 26 2312 | 23126:23 AM2h18Balerna station8:41 AMLucerne station€561One-way2 transfers
RE 80 25502 | 25502 · IC 2 866 | 866 · IR 26 2312 | 23126:34 AM2h07Chiasso station8:41 AMLucerne station€571One-way2 transfers
S 50 25578 | 25578 · IC 21 688 | 6885:23 PM2h18Stabio station7:41 PMLucerne station€591One-way1 transfer
S 10 25178 | 25178 · IC 21 688 | 6885:23 PM2h18Balerna station7:41 PMLucerne station€591One-way1 transfer
RE 80 25526 | 25526 · IC 21 688 | 6885:34 PM2h07Chiasso station7:41 PMLucerne station€591One-way1 transfer
RE 80 25502 | 25502 · IC 2 866 | 866 · IR 26 2312 | 23126:34 AM2h07Chiasso station8:41 AMLucerne station€571One-way2 transfers
RE 80 25506 | 25506 · IC 21 668 | 6687:34 AM2h07Chiasso station9:41 AMLucerne station€801One-way1 transfer
EC 10 | 10+
IR VAE 2012 | 20128:05 AM2h16Chiasso station10:21 AMLucerne station€801One-way1 transfer
IC 2 1462 | 1462 · S 3 21326 | 213266:04 AM2h17Chiasso station8:21 AMLucerne station€611One-way1 transfer
Travel Information
Compare train, bus, and flight for Milan to Lucerne
Omio recommends booking the bus as it is the most popular option from Milan to Lucerne among Omio's users. If you are prioritising price take the bus with prices starting from €17. For those with little time consider booking a flight which can get you there in 1h 49m. 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 bus costs an average of €17, and a flight costs an average of €38.
Distance: 189 km
Compare train with
| Train | Most popular Bus | Flight |
|---|---|---|
€76 Average price | €26 Average price Cheapest | €80 Average price |
3h 37m Average total duration 3h 7m Onboard + 30m Additional time* | 3h 45m Average total duration 3h 15m Onboard + 30m Additional time* | 4h 49m Average total duration Fastest 1h 49m 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, Monday, May 25. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
S 40 25472 | 25472 · S 10 25126 | 25126 · EC 32 | 32+ IR VAE 2026 | 2026 | 2:53 PM Stabio station | 2h28 | 5:21 PM Lucerne station | 3 transfers | |
S 10 25126 | 25126 · EC 32 | 32+ IR VAE 2026 | 2026 | 2:57 PM Balerna station | 2h24 | 5:21 PM Lucerne station | 2 transfers | |
EC 32 | 32+ IR VAE 2026 | 2026 | 3:05 PM Chiasso station | 2h16 | 5:21 PM Lucerne station | 1 transfer | |
EuroCity 20 | 3:10 PM Milan Centrale | 2h32 | 5:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 20 | 3:10 PM Milan Centrale | 2h50 | 6:00 PM Zug station | 0 transfersDirect | |
S 50 25574 | 25574 · IC 21 684 | 684 | 3:23 PM Stabio station | 2h18 | 5:41 PM Lucerne station | 1 transfer | |
S 10 25174 | 25174 · IC 21 684 | 684 | 3:23 PM Balerna station | 2h18 | 5:41 PM Lucerne station | 1 transfer | |
RE 80 25522 | 25522 · IC 21 684 | 684 | 3:34 PM Chiasso station | 2h07 | 5:41 PM Lucerne station | 1 transfer | |
S 40 25474 | 25474 · RE 80 25824 | 25824 · IC 31020 | 31020 · S 3 21368 | 21368 | 3:53 PM Stabio station | 3h00 | 6:53 PM Lucerne station | 3 transfers | |
S 40 25474 | 25474 · S 10 25128 | 25128 · EC 20 | 20+ IR VAE 2028 | 2028 | 3:53 PM Stabio station | 2h28 | 6:21 PM Lucerne station | 3 transfers | |
S 10 25128 | 25128 · IC 31020 | 31020 · S 3 21368 | 21368 | 3:57 PM Balerna station | 2h56 | 6:53 PM Lucerne station | 2 transfers | |
S 10 25128 | 25128 · EC 20 | 20+ IR VAE 2028 | 2028 | 3:57 PM Balerna station | 2h24 | 6:21 PM Lucerne station | 2 transfers | |
EC 20 | 20+ IR VAE 2028 | 2028 | 4:05 PM Chiasso station | 2h16 | 6:21 PM Lucerne station | 1 transfer | |
EuroCity 22 | 4:10 PM Milan Centrale | 2h50 | 7:00 PM Zug station | 0 transfersDirect | |
EuroCity 22 | 4:10 PM Milan Centrale | 2h32 | 6:42 PM Arth-Goldau | 0 transfersDirect | |
RE 80 25824 | 25824 · IC 31020 | 31020 · S 3 21368 | 21368 | 4:11 PM Chiasso station | 2h42 | 6:53 PM Lucerne station | 2 transfers | |
S 50 25596 | 25596 · IC 2 886 | 886 · IR 26 2332 | 2332 | 4:23 PM Stabio station | 2h18 | 6:41 PM Lucerne station | 2 transfers | |
S 10 25196 | 25196 · IC 2 886 | 886 · IR 26 2332 | 2332 | 4:23 PM Balerna station | 2h18 | 6:41 PM Lucerne station | 2 transfers | |
S 50 25596 | 25596 · IC 31086 | 31086+ IR VAE 2030 | 2030 | 4:23 PM Stabio station | 2h58 | 7:21 PM Lucerne station | 2 transfers | |
S 10 25196 | 25196 · IC 31086 | 31086+ IR VAE 2030 | 2030 | 4:23 PM Balerna station | 2h58 | 7:21 PM Lucerne station | 2 transfers | |
RE 80 25524 | 25524 · IC 2 886 | 886 · IR 26 2332 | 2332 | 4:34 PM Chiasso station | 2h07 | 6:41 PM Lucerne station | 2 transfers | |
RE 80 25524 | 25524 · IC 31086 | 31086+ IR VAE 2030 | 2030 | 4:34 PM Chiasso station | 2h47 | 7:21 PM Lucerne station | 2 transfers | |
S 40 25476 | 25476 · S 10 25130 | 25130 · EC 22 | 22+ IR VAE 2030 | 2030 | 4:53 PM Stabio station | 2h28 | 7:21 PM Lucerne station | 3 transfers | |
S 10 25130 | 25130 · EC 22 | 22+ IR VAE 2030 | 2030 | 4:57 PM Balerna station | 2h24 | 7:21 PM Lucerne station | 2 transfers | |
EC 22 | 22+ IR VAE 2030 | 2030 | 5:05 PM Chiasso station | 2h16 | 7:21 PM Lucerne station | 1 transfer | |
EuroCity 24 | 5:10 PM Milan Centrale | 2h50 | 8:00 PM Zug station | 0 transfersDirect | |
EuroCity 24 | 5:10 PM Milan Centrale | 2h32 | 7:42 PM Arth-Goldau | 0 transfersDirect | |
S 10 25178 | 25178 · IC 21 688 | 688 | 5:23 PM Balerna station | 2h18 | 7:41 PM Lucerne station | 1 transfer | |
S 50 25578 | 25578 · IC 21 688 | 688 | 5:23 PM Stabio station | 2h18 | 7:41 PM Lucerne station | 1 transfer | |
RE 80 25526 | 25526 · IC 21 688 | 688 | 5:34 PM Chiasso station | 2h07 | 7:41 PM Lucerne station | 1 transfer | |
S 40 25478 | 25478 · S 10 25132 | 25132 · EC 24 | 24+ IR VAE 2032 | 2032 | 5:53 PM Stabio station | 2h28 | 8:21 PM Lucerne station | 3 transfers | |
S 10 25132 | 25132 · EC 24 | 24+ IR VAE 2032 | 2032 | 5:57 PM Balerna station | 2h24 | 8:21 PM Lucerne station | 2 transfers | |
EC 24 | 24+ IR VAE 2032 | 2032 | 6:05 PM Chiasso station | 2h16 | 8:21 PM Lucerne station | 1 transfer | |
EuroCity 36 | 6:10 PM Milan Centrale | 2h50 | 9:00 PM Zug station | 0 transfersDirect | |
EuroCity 36 | 6:10 PM Milan Centrale | 2h32 | 8:42 PM Arth-Goldau | 0 transfersDirect | |
S 10 25180 | 25180 · IC 1490 | 1490 | 6:23 PM Balerna station | 2h16 | 8:39 PM Lucerne station | 1 transfer | |
S 50 25580 | 25580 · IC 1490 | 1490 | 6:23 PM Stabio station | 2h16 | 8:39 PM Lucerne station | 1 transfer | |
S 40 25480 | 25480 · S 10 25134 | 25134 · EC 36 | 36+ IR VAE 2034 | 2034 | 6:53 PM Stabio station | 2h28 | 9:21 PM Lucerne station | 3 transfers | |
S 10 25134 | 25134 · EC 36 | 36+ IR VAE 2034 | 2034 | 6:57 PM Balerna station | 2h24 | 9:21 PM Lucerne station | 2 transfers | |
EuroCity 126 | 7:10 PM Milan Centrale | 2h50 | 10:00 PM Zug station | 0 transfersDirect | |
EuroCity 126 | 7:10 PM Milan Centrale | 2h32 | 9:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 28 | 8:10 PM Milan Centrale | 2h32 | 10:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 28 | 8:10 PM Milan Centrale | 2h50 | 11:00 PM Zug station | 0 transfersDirect | |
B 523 572 | 572 · S 10 25138 | 25138 · EC 28 | 28 · S 1 21183 | 21183 | 8:38 PM Milan | 3h00 | 11:38 PM Lucerne station | 3 transfers | |
| Tuesday, May 26 | |||||
B 523 580 | 580 · S 10 25104 | 25104 · IC 2 862 | 862 · IR 26 2308 | 2308 | 12:38 AM Milan | 6h03 | 6:41 AM Lucerne station | 3 transfers | |
IC 2 1462 | 1462 · S 3 21326 | 21326 | 6:04 AM Chiasso station | 2h17 | 8:21 AM Lucerne station | 1 transfer | |
S 10 25156 | 25156 · IC 2 866 | 866 · IR 26 2312 | 2312 | 6:23 AM Balerna station | 2h18 | 8:41 AM Lucerne station | 2 transfers | |
S 50 25550 | 25550 · IC 2 866 | 866 · IR 26 2312 | 2312 | 6:23 AM Stabio station | 2h18 | 8:41 AM Lucerne station | 2 transfers | |
RE 80 25502 | 25502 · IC 2 866 | 866 · IR 26 2312 | 2312 | 6:34 AM Chiasso station | 2h07 | 8:41 AM Lucerne station | 2 transfers | |
S 40 25452 | 25452 · IC 2 1466 | 1466+ IR VAE 2010 | 2010 | 6:53 AM Stabio station | 2h28 | 9:21 AM Lucerne station | 2 transfers | |
S 10 25110 | 25110 · IC 2 1466 | 1466+ IR VAE 2010 | 2010 | 6:57 AM Balerna station | 2h24 | 9:21 AM Lucerne station | 2 transfers | |
IC 2 1466 | 1466+ IR VAE 2010 | 2010 | 7:04 AM Chiasso station | 2h17 | 9:21 AM Lucerne station | 1 transfer | |
EuroCity 10 | 7:10 AM Milan Centrale | 2h32 | 9:42 AM Arth-Goldau | 0 transfersDirect | |
EuroCity 10 | 7:10 AM Milan Centrale | 2h50 | 10:00 AM Zug station | 0 transfersDirect | |
S 10 25158 | 25158 · IC 21 668 | 668 | 7:23 AM Balerna station | 2h18 | 9:41 AM Lucerne station | 1 transfer | |
S 50 25558 | 25558 · IC 21 668 | 668 | 7:23 AM Stabio station | 2h18 | 9:41 AM Lucerne station | 1 transfer | |
RE 80 25506 | 25506 · IC 21 668 | 668 | 7:34 AM Chiasso station | 2h07 | 9:41 AM Lucerne station | 1 transfer | |
S 40 25458 | 25458 · S 10 25112 | 25112 · EC 10 | 10+ IR VAE 2012 | 2012 | 7:53 AM Stabio station | 2h28 | 10:21 AM Lucerne station | 3 transfers | |
S 10 25112 | 25112 · EC 10 | 10+ IR VAE 2012 | 2012 | 7:57 AM Balerna station | 2h24 | 10:21 AM Lucerne station | 2 transfers | |
EC 10 | 10+ IR VAE 2012 | 2012 | 8:05 AM Chiasso station | 2h16 | 10:21 AM Lucerne station | 1 transfer | |
EuroCity 12 | 8:10 AM Milan Centrale | 2h50 | 11:00 AM Zug station | 0 transfersDirect | |
EuroCity 12 | 8:10 AM Milan Centrale | 2h32 | 10:42 AM Arth-Goldau | 0 transfersDirect | |
S 50 25560 | 25560 · IC 2 870 | 870 · IR 26 2316 | 2316 | 8:23 AM Stabio station | 2h18 | 10:41 AM Lucerne station | 2 transfers | |
S 10 25160 | 25160 · IC 2 870 | 870 · IR 26 2316 | 2316 | 8:23 AM Balerna station | 2h18 | 10:41 AM Lucerne station | 2 transfers | |
EuroCity 14 | 9:10 AM Milan Centrale | 2h32 | 11:42 AM Arth-Goldau | 0 transfersDirect | |
EuroCity 14 | 9:10 AM Milan Centrale | 2h50 | 12:00 PM Zug station | 0 transfersDirect | |
EuroCity 178 | 10:10 AM Milan Centrale | 3h01 | 1:11 PM Arth-Goldau | 0 transfersDirect | |
178 | 10:10 AM Milan Centrale | 3h31 | 1:41 PM Lucerne | 0 transfersDirect | |
EuroCity 150 | 11:10 AM Milan Centrale | 2h32 | 1:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 150 | 11:10 AM Milan Centrale | 2h50 | 2:00 PM Zug station | 0 transfersDirect | |
EuroCity 30 | 12:05 PM Milano Lambrate | 2h37 | 2:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 30 | 12:05 PM Milano Lambrate | 2h55 | 3:00 PM Zug station | 0 transfersDirect | |
EuroCity 16 | 1:10 PM Milan Centrale | 2h32 | 3:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 16 | 1:10 PM Milan Centrale | 2h50 | 4:00 PM Zug station | 0 transfersDirect | |
EuroCity 32 | 2:05 PM Milano Lambrate | 2h37 | 4:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 32 | 2:05 PM Milano Lambrate | 2h55 | 5:00 PM Zug station | 0 transfersDirect | |
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, bus, or flight
Compare train, bus, 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 25
May 26
May 27
May 28
May 29
May 30
May 31
Jun 01
Jun 02
Jun 03
Jun 04
Jun 05
Jun 06
Jun 07
Jun 08
Jun 09
Jun 10
Jun 11
Jun 12
Jun 13
Jun 14
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, DSB 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, Raileurope or Rome2rio?
- 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 28 times per day, taking around 3h 7m. Cheap train tickets for this journey start at €50 but you can travel from only €17 by bus.
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 3h 7m |
Cheapest ticket price €50 |
Trains per day 28 |
Direct trains 20 |
Fastest train 2h 7m |
First train 12:23 AM |
Last train 11:18 PM |
Cheapest Month Jun |
Cheapest Day Sat |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Mon |
Least Busy Day Sat |
Best time to book 1 day |
Train companies: Trenitalia, SBB, DSB, Trenitalia EuroCity from Milan to Lucerne trainsTrenitalia, SBB, DSB, Trenitalia EuroCity trains will get you between Milan and Lucerne from €17. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Trenitalia
SBB
DSB
Trenitalia EuroCity
FAQs: Trains from Milan to Lucerne
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
Popular train stations from Milan to 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




