The average train between Warsaw and Puck takes 4h 28m and the fastest train takes 3h 41m. There is a train service every few hours from Warsaw to Puck. 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 every 2 hours between Warsaw and Puck. The earliest departure is at 2:20 AM at night, and the last departure from Warsaw is at 10:45 PM which arrives into Puck at 5:31 AM. All services require a transfer, and take on average 4h 28m. The schedules shown below are for the next available departures.

4h 26m • 1 change

4h • 1 change

3h 46m • 1 change

4h 38m • 1 change

5h 21m • 1 change

4h 26m • 1 change

4h • 1 change

3h 46m • 1 change

5h 18m • 1 change

4h 44m • 1 change

4h 1m • 1 change

4h 18m • 1 change

5h 18m • 1 change

4h 44m • 1 change

4h 1m • 1 change

4h 18m • 1 change
Want to know about travelling from Warsaw to Puck? 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 Warsaw to Puck. However, there are services departing from Warsaw station and arriving at Puck station via Gdynia Glowna. The journey, including transfers, takes approximately 4h 28m.
Warsaw to Puck train services, operated by PKP Intercity, depart from Warszawa Centralna station.
Warsaw to Puck train services, operated by PKP Intercity, arrive at Gdynia Glowna station.
Book your Warsaw to Puck train tickets online with PKP Intercity and Polregio.
The distance between Warsaw and Puck is 325.9 km. The road distance is 376 km.
PKP Intercity operates a train from Warszawa Centralna to Gdynia Glowna every 30 minutes. Tickets cost zł 220–850 and the journey takes 3h 36m.