The average train between Basel and Willisau takes 2h 1m and the fastest train takes 1h 25m. There is an hourly train service from Basel to Willisau. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Basel and Willisau. The earliest departure is at 12:30 AM at night, and the last departure from Basel is at 10:04 PM which arrives into Willisau at 11:29 PM. All services require a transfer at Olten and take an average of 2h 1m. The schedules shown below are for the next available departures.


5h 59m • 2 changes

2h 21m • 2 changes

1h 59m • 2 changes

1h 55m • 2 changes

5h 59m • 2 changes

2h 21m • 2 changes

1h 59m • 2 changes

1h 55m • 2 changes

5h 59m • 2 changes

2h 21m • 2 changes

1h 59m • 2 changes

1h 55m • 2 changes

5h 59m • 2 changes

2h 21m • 2 changes

1h 59m • 2 changes

1h 55m • 2 changes

5h 59m • 2 changes

2h 21m • 2 changes

1h 59m • 2 changes

1h 55m • 2 changes

1h 55m • 2 changes

1h 55m • 2 changes

1h 43m • 2 changes

1h 59m • 2 changesWant to know about travelling from Basel to Willisau? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Basel to Willisau. However, there are services departing from Basel SBB station and arriving at Willisau station via Olten station. The journey, including transfers, takes approximately 2h 1m.
Basel to Willisau train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Basel SBB station.
Basel to Willisau train services, operated by BLS AG, arrive at Willisau station.
Book your Basel to Willisau train tickets online with Omio.
The distance between Basel and Willisau is 58.1 km. The road distance is 74 km.
You can take a train from Basel SBB to Willisau via Olten and Langenthal in around 2h 3m.