The cheapest and fastest trains from Milan to Lucerne
Cheapest price
$67
Average price
$109
Fastest journey
2 h 7 m
Average duration
2 h 16 m
Trains per day
44
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 $109 if you buy it on the day, but the cheapest tickets can be found for only $67.
Of the 44 trains that leave Milan for Lucerne on Thu, Apr 02, 27 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Thu, Apr 02 the direct trains cover the 189 km distance in an average of 2 h 16 m but if you time it right, some trains will get you there in just 2 h 7 m .
On Thu, Apr 02 the slowest trains will take 2 h 18 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 25562 | 25562 · IC 21 672 | 6729:23 AM2h18Stabio station11:41 AMLucerne station$671One-way1 transfer
S 10 25162 | 25162 · IC 21 672 | 6729:23 AM2h18Balerna station11:41 AMLucerne station$671One-way1 transfer
S 50 25560 | 25560 · IC 2 870 | 870 · IR 26 2316 | 23168:23 AM2h18Stabio station10:41 AMLucerne station$691One-way2 transfers
S 10 25160 | 25160 · IC 2 870 | 870 · IR 26 2316 | 23168:23 AM2h18Balerna station10:41 AMLucerne station$691One-way2 transfers
RE 80 25508 | 25508 · IC 2 870 | 870 · IR 26 2316 | 23168:34 AM2h07Chiasso station10:41 AMLucerne station$701One-way2 transfers
RE 80 25508 | 25508 · IC 2 870 | 870 · IR 26 2316 | 23168:34 AM2h07Chiasso station10:41 AMLucerne station$701One-way2 transfers
S 50 25562 | 25562 · IC 21 672 | 6729:23 AM2h18Stabio station11:41 AMLucerne station$671One-way1 transfer
S 10 25162 | 25162 · IC 21 672 | 6729:23 AM2h18Balerna station11:41 AMLucerne station$671One-way1 transfer
S 50 25560 | 25560 · IC 2 870 | 870 · IR 26 2316 | 23168:23 AM2h18Stabio station10:41 AMLucerne station$691One-way2 transfers
S 10 25160 | 25160 · IC 2 870 | 870 · IR 26 2316 | 23168:23 AM2h18Balerna station10:41 AMLucerne station$691One-way2 transfers
Travel Information
Compare train, bus, 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 bus 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 bus costs an average of $20, and a flight costs an average of $49.
Distance: 117 miles (189 km)
Compare train with
Most popular Train | Bus | Flight |
|---|---|---|
$81 Average price | $30 Average price Cheapest | $92 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, Wednesday, April 1. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
S 10 25160 | 25160 · IC 2 870 | 870 · IR 26 2316 | 2316 | 6:23 AM Balerna station | 2h18 | 8:41 AM Lucerne station | 2 transfers | |
S 50 25560 | 25560 · IC 2 870 | 870 · IR 26 2316 | 2316 | 6:23 AM Stabio station | 2h18 | 8:41 AM Lucerne station | 2 transfers | |
RE 80 25508 | 25508 · IC 2 870 | 870 · IR 26 2316 | 2316 | 6:34 AM Chiasso station | 2h07 | 8:41 AM Lucerne station | 2 transfers | |
S 40 25460 | 25460 · S 10 25114 | 25114 · EC 12 | 12 · EV EV1 1628 | 1628 | 6:53 AM Stabio station | 2h40 | 9:33 AM Lucerne | 3 transfers | |
S 40 25460 | 25460 · S 10 25114 | 25114 · EC 12 | 12 · IR VAE 2014 | 2014 | 6:53 AM Stabio station | 2h32 | 9:25 AM Lucerne station | 4 transfers | |
S 10 25114 | 25114 · EC 12 | 12 · IR VAE 2014 | 2014 · IR 75 2114 | 2114 | 6:57 AM Balerna station | 2h28 | 9:25 AM Lucerne station | 3 transfers | |
S 10 25114 | 25114 · EC 12 | 12 · EV EV1 1628 | 1628 | 6:57 AM Balerna station | 2h36 | 9:33 AM Lucerne | 2 transfers | |
EC 12 | 12 · IR VAE 2014 | 2014 · IR 75 2114 | 2114 | 7:05 AM Chiasso station | 2h20 | 9:25 AM Lucerne station | 2 transfers | |
EC 12 | 12 · EV EV1 1628 | 1628 | 7:05 AM Chiasso station | 2h28 | 9:33 AM Lucerne | 1 transfer | |
EuroCity 14 | 7:10 AM Milan Centrale | 2h50 | 10:00 AM Zug station | 0 transfersDirect | |
EuroCity 14 | 7:10 AM Milan Centrale | 2h32 | 9:42 AM Arth-Goldau | 0 transfersDirect | |
S 50 25562 | 25562 · IC 21 672 | 672 | 7:23 AM Stabio station | 2h18 | 9:41 AM Lucerne station | 1 transfer | |
S 10 25162 | 25162 · IC 21 672 | 672 | 7:23 AM Balerna station | 2h18 | 9:41 AM Lucerne station | 1 transfer | |
S 40 25462 | 25462 · S 10 25116 | 25116 · EC 14 | 14 · IR VAE 2016 | 2016 | 7:53 AM Stabio station | 2h32 | 10:25 AM Lucerne station | 4 transfers | |
S 40 25462 | 25462 · S 10 25116 | 25116 · EC 14 | 14 · EV EV1 1632 | 1632 | 7:53 AM Stabio station | 2h40 | 10:33 AM Lucerne | 3 transfers | |
S 10 25116 | 25116 · EC 14 | 14 · IR VAE 2016 | 2016 · IR 75 2116 | 2116 | 7:57 AM Balerna station | 2h28 | 10:25 AM Lucerne station | 3 transfers | |
S 10 25116 | 25116 · EC 14 | 14 · EV EV1 1632 | 1632 | 7:57 AM Balerna station | 2h36 | 10:33 AM Lucerne | 2 transfers | |
EuroCity 178 | 8:10 AM Milan Centrale | 3h01 | 11:11 AM Arth-Goldau | 0 transfersDirect | |
EuroCity 150 | 9:10 AM Milan Centrale | 2h32 | 11:42 AM Arth-Goldau | 0 transfersDirect | |
EuroCity 150 | 9:10 AM Milan Centrale | 2h50 | 12:00 PM Zug station | 0 transfersDirect | |
EuroCity 30 | 10:05 AM Milano Lambrate | 2h55 | 1:00 PM Zug station | 0 transfersDirect | |
EuroCity 30 | 10:05 AM Milano Lambrate | 2h37 | 12:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 16 | 11:10 AM Milan Centrale | 2h32 | 1:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 16 | 11:10 AM Milan Centrale | 2h50 | 2:00 PM Zug station | 0 transfersDirect | |
EuroCity 32 | 12:05 PM Milano Lambrate | 2h55 | 3:00 PM Zug station | 0 transfersDirect | |
EuroCity 32 | 12:05 PM Milano Lambrate | 2h37 | 2:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 20 | 1:10 PM Milan Centrale | 2h32 | 3:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 20 | 1:10 PM Milan Centrale | 2h50 | 4:00 PM Zug station | 0 transfersDirect | |
EuroCity 22 | 2:10 PM Milan Centrale | 2h32 | 4:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 22 | 2:10 PM Milan Centrale | 2h50 | 5:00 PM Zug station | 0 transfersDirect | |
EuroCity 24 | 3:10 PM Milan Centrale | 2h32 | 5:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 24 | 3:10 PM Milan Centrale | 2h50 | 6:00 PM Zug station | 0 transfersDirect | |
EuroCity 36 | 4:10 PM Milan Centrale | 2h32 | 6:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 36 | 4:10 PM Milan Centrale | 2h50 | 7:00 PM Zug station | 0 transfersDirect | |
EuroCity 26 | 5:10 PM Milan Centrale | 2h50 | 8:00 PM Zug station | 0 transfersDirect | |
EuroCity 26 | 5:10 PM Milan Centrale | 2h32 | 7:42 PM Arth-Goldau | 0 transfersDirect | |
EuroCity 28 | 6:10 PM Milan Centrale | 2h50 | 9:00 PM Zug station | 0 transfersDirect | |
EuroCity 28 | 6:10 PM Milan Centrale | 2h32 | 8:42 PM Arth-Goldau | 0 transfersDirect | |
| Thursday, April 2 | |||||
EuroCity 10 | 5:10 AM Milan Centrale | 2h32 | 7:42 AM Arth-Goldau | 0 transfersDirect | |
EuroCity 10 | 5:10 AM Milan Centrale | 2h50 | 8:00 AM Zug station | 0 transfersDirect | |
EC 10 | 10 · EV EV1 1624 | 1624 | 6:05 AM Chiasso station | 2h28 | 8:33 AM Lucerne | 1 transfer | |
EC 10 | 10 · IR VAE 2012 | 2012 · IR 75 2112 | 2112 | 6:05 AM Chiasso station | 2h20 | 8:25 AM Lucerne station | 2 transfers | |
EuroCity 12 | 6:10 AM Milan Centrale | 2h50 | 9:00 AM Zug station | 0 transfersDirect | |
EuroCity 12 | 6:10 AM Milan Centrale | 2h32 | 8:42 AM Arth-Goldau | 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.
Apr 01
Apr 02
Apr 03
Apr 04
Apr 05
Apr 06
Apr 07
Apr 08
Apr 09
Apr 10
Apr 11
Apr 12
Apr 13
Apr 14
Apr 15
Apr 16
Apr 17
Apr 18
Apr 19
Apr 20
Apr 21
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 (€47) but you can travel from only $20 (€16) 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 117 miles (189 km) distance in 2h 7m.
Distance 117 miles (189 km) |
Average train duration 2h 55m |
Cheapest ticket price $57 (€47) |
Trains per day 26 |
Direct trains 20 |
Fastest train 2h 7m |
First train 12:23 AM |
Last train 11:18 PM |
Train companies: Trenitalia, SBB, Trenitalia EuroCity from Milan to Lucerne trainsTrenitalia, SBB, Trenitalia EuroCity trains will get you between Milan and Lucerne from $20 (€16). With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Trenitalia
SBB
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
More options for your journey from Milan to Lucerne
Here are some other resources that might have the information you need



