Book a Japan autumn by train – browse the full suite of Japan Rail Passes, here.

RailcardsBusiness

No tickets in your basket.

Why not plan a trip?

My Bookings
Loading...
Loading...
Trenitalia
Italo

Compare prices from over 270 rail and coach companies in Europe

Icon of trainline-phone-tickets.svg

Buy your tickets with us and easily find them on your phone

Icon of trainline-safe-payments.svg

Safely pay with PayPal, Visa and all international payment cards

What customers say about Trainline

Read real reviews from real users

Travelling from Milano Porta Garibaldi to Madrid by train

Looking to travel from Milano Porta Garibaldi to Madrid by train? You've come to the right place!

On average, it takes around 22 hours 47 minutes to travel from Milano Porta Garibaldi to Madrid by train, the fastest services can get you there in as little as 16 hours 9 minutes though. You'll usually find 10 trains per day running along the 739 miles (1189 km) route between these two destinations. You’ll need to make 2 changes during the journey to Madrid, as there currently aren't any direct services on this route.

Plan your trip ahead and book your train tickets in advance if you want to snap up the cheapest fares. Just start a search in our Journey Planner to view the latest prices for trains from Milano Porta Garibaldi to Madrid.

If you’re feeling ready to book, start looking for cheap train tickets with us today. Keep reading for more information on the journey to Madrid by train, including our timetable where you can view first and last train times.

Trains to Madrid from Milano Porta Garibaldi

First train

06:25

Last train

21:10

Departure stationMilano Porta Garibaldi
Arrival stationMadrid
Journey time

From 16h 9m

Distance

739 miles (1189 km)

Frequency

10 trains per day

Changes

2 changes

Train and bus operators

Flixbus

What do people frequently ask about the train journey from Milano Porta Garibaldi to Madrid?

Want to know more about your journey from Milano Porta Garibaldi to Madrid? We've compiled some of the most frequently asked questions by our customers to help you plan your journey.

How do I travel from Milano Porta Garibaldi to Madrid?

You can get from Milano Porta Garibaldi to Madrid by train in 22 hours and 47 minutes on average, with the fastest journeys taking just 16 hours and 9 minutes. Check out our Journey Planner for more details.

How long does the train from Milano Porta Garibaldi to Madrid take?

The average journey time by train between Milano Porta Garibaldi and Madrid is 22 hours and 47 minutes, with around 10 trains per day running on this route. The journey time may be longer on weekends and holidays, so use our Journey Planner on this page to search for a specific travel date.

What's the fastest journey time between Milano Porta Garibaldi and Madrid by train?

The fastest journey time by train from Milano Porta Garibaldi to Madrid is 16 hours and 9 minutes.

Can you take a train directly from Milano Porta Garibaldi to Madrid?

No, there are no direct train services from Milano Porta Garibaldi to Madrid. Travelling from Milano Porta Garibaldi to Madrid by train will require a minimum of 2 changes.

What are the train times from Milano Porta Garibaldi to Madrid?

Check out the next trains departing from Milano Porta Garibaldi to Madrid for Tuesday 21st October 2025. For the full train timetable/schedule, or to search for a later time or date, click here.
DepartsArrivesDuration
05:2522:1916h 54m, 2 changes
06:1022:1916h 9m, 4 changes
15:1014:5223h 42m, 3 changes
18:1016:3222h 22m, 4 changes
19:0520:0224h 57m, 7 changes
19:0520:5225h 47m, 6 changes
19:4320:0224h 19m, 8 changes
19:4320:5225h 9m, 7 changes
20:1020:0223h 52m, 9 changes
20:1020:5224h 42m, 8 changes

How do I find cheap train tickets from Milano Porta Garibaldi to Madrid?

If you’re planning a trip to Europe soon, our Trainline team of experts have put together some tips to help you find cheap tickets. Booking on the day in Europe is usually more expensive and costs can vary depending on the time of day, route or travel class.

1. Book in advance

The price of train tickets from Milano Porta Garibaldi to Madrid starts at § one-way for a Standard Class ticket if you book in advance. Most train companies across Europe release their tickets around three to six months ahead of time, so if you know the dates you want to travel, you may be able to find cheaper tickets.

2. Be flexible with your travel times

If you can, consider travelling outside of 'peak hours' (generally between 06:00 - 10:00 and 15:00 - 19:00 on weekdays) as many train companies increase their ticket prices during these commuter times.

3. Buy a rail pass

If you're visiting multiple locations on your trip, buying a rail pass can be cheaper than buying individual tickets. We're official retailers of Interrail Passes that are valid for travel within one country or multiple countries across Europe.

4. Choose a slower or connecting train

On some busier routes, you might have the option to take a slower or connecting train. It may take longer than some high-speed or direct services, but if you have some extra time on your hands, you might find a cheaper fare.

5. Look out for train ticket sales and discounts

Many train companies in Europe will often run sales on tickets throughout the year or offer discounts to senior/youth/group travellers, so keep an eye out!

6. Take a night train

Save on accommodation and use the night to travel by sleeper train to your next destination.

For specific information about how to get your hands on cheap tickets, check out our European train tickets hub.

§Some train companies may not offer any Advance ticket types or cheaper deals for early bookings. On rare occasions, train companies may choose to release special offers closer to the date on last-minute or late-release tickets. This is dependent on the individual train operating company you travel with.

Europe’s leading train and coach app

We help customers across Europe make more than 172,000 smarter journeys every day.