There are 7 ways to get from Zürich to Lucerne by train, bus, taxi, car, rideshare, shuttle or towncar
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.
Questions & Answers
The cheapest way to get from Zürich to Lucerne is to rideshare which costs SFr 3 and takes 54 min.
The quickest way to get from Zürich to Lucerne is to taxi which takes 37 min and costs SFr 220 - SFr 270.
The distance between Zürich and Lucerne is 40 km. The road distance is 52 km.
The train from Zürich HB to Luzern takes 45 min including transfers and departs every 30 minutes.
Yes, there is a direct bus departing from Zurich and arriving at Lucerne. Services depart every 15 minutes, and operate every day. The journey takes approximately 4 h 10 min.
Yes, there is a direct train departing from Zürich HB and arriving at Luzern. Services depart every 30 minutes, and operate every day. The journey takes approximately 45 min.
What companies run services between Zürich, Switzerland and Lucerne, Switzerland?
Swiss Railways (SBB/CFF/FFS) operates a train from Zürich to Lucerne every 30 minutes. Tickets cost $23 - $45 and the journey takes 45 min. Alternatively, FlixBus operates a bus from Zürich to Lucerne twice daily. Tickets cost $3 - $5 and the journey takes 4 h 10 min.
The national railway company of Switzerland, Swiss Railways operates trains throughout the country and adjacent European nations including Germany, France, Italy and Austria. Tickets are sold in two classes - First and Second - with most long-distance trains offering a bistro car serving beverages and snacks. Individual tickets can be bought easily at stands, while a variety of travel passes are on offer to suit different travel needs. Swiss Railways codeshares with American Airlines and Swiss International Air Lines out of Zurich International Airport.
Train from Zürich HB to Luzern
One of Europe’s leading bus companies, Flixbus serves over 1400 destinations, in 26 countries including Germany, France, Italy, Austria, the Netherlands, Croatia, Spain, and across Scandinavia and central and eastern Europe. Founded in 2012, Flixbus’ extensive network connects cities with approximately 200,000 trips, with buses often departing every 30 minutes. One of the most affordable ways to get around Europe (and expanding soon into the US), a Flixbus journey is cost-effective, well-connected, comfortable and safe.
Bus from Zurich to Luzern
- Ave. Duration
- 4 h 10 min
- Twice daily
- Estimated price
- $3 - $5
A ridesharing platform with 40 million users, Blablacar gives you access to destinations without worrying about on-the-road chaos. The basic idea is that you carpool with locals who are already planning to drive your route and have space in their car. With some flexibility you’ll get to your destination – often faster and cheaper than other means. On the website or app, enter your departure and arrival points and your date of travel, sift through the profiles of drivers who’ve posted pre-planned drives and find one whose timing and preferences match yours. Request to join the ride, wait be accepted, and pay your share of the set price.
Rideshare from Zurich to Lucerne
- Ave. Duration
- 54 min
- Once daily
- Estimated price
- Book at
Want to know more about travelling around Switzerland
Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
We compare the different Eurail types and help you decide if a Eurail Pass is right for you
Want to know more about Flixbus?
Rome2rio’s guide has all the details
Is ride-sharing platform BlaBlaCar right for you?
Don't have a car, or can't get there on public transportation? This carpooling platform could be your answer.