Travelling from Milan to Portbou by train

Want to know how to get from Milan to Portbou by train? We have gathered for you all the useful information about this trip!

The fastest trains from Milan to Portbou take around 11 hours and 45 minutes, covering a distance of approximately 591 kilometres.

On weekdays, the first train leaving Milan is scheduled to depart at around  06:00. The last departure is usually at around 21:25 . On Saturdays and Sundays, trains leave Milan at around 06:00, with the last train leaving at around 22:15. On average, there are about 6 trains per day travelling between the two cities. They leave approximately every 1 hour and 31 minutes.

Prices for a single ticket between the two cities start from £191.30.

We think any time is a great time to visit Portbou, as each season has its own unique charm. Nevertheless, please make sure you check the local weather and average seasonal temperatures at destination before deciding on your holiday.

For more tips to help you plan your journey, check out our help articles, or read our guide to Portbou.

Is there a direct train from Milan to Portbou?

The journey between Milan and Portbou usually involves changes of train.

We usually find around departures on this route every weekday, counting only those that leave enough time to change trains without waiting around for longer than necessary.

Trains are typically more frequent on weekends, when we found around departures.

How long does it take to travel from Milan to Portbou?

The Milan to Portbou train travel takes about 11 hours and 45 minutes, no matter when you leave.

What are the Milan to Portbou train times and schedule?

If you're travelling on a weekday, you'll find the earliest train to Portbou leaving Milan at around 06:00 and the last train leaving at around 21:25 . At weekends, the first train of the day leaves Milan at around 06:00, with the final departure at 22:15.