- Must visit
Pinacoteca di Brera
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
Cheapest price
$161
Average price
$260
Fastest journey
19 h 33 m
Average duration
21 h 39 m
Buses per day
23
Distance
1188 km
The best way to find a cheap bus ticket from Madrid to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Madrid to Milan will cost around $260 if you buy it on the day, but the cheapest tickets can be found for only $161.
Of the 23 buses that leave Madrid for Milan on Sat, Aug 29, 1 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Aug 29 the direct buses cover the 1188 km distance in an average of 21 h 39 m but if you time it right, some buses will get you there in just 19 h 33 m .
On Sat, Aug 29 the slowest buses will take 23 h 5 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
3187 · 94765
4822 · 4732
06071+
4732
06081+
4732
06281+
4732
06111+
4732
06011+
4732
06281+
4732
06081+
4732
FlixBusOmio recommends booking the flight as it is the most popular option from Madrid to Milan among Omio's users. If you are prioritising price take the bus with prices starting from $47. For those with little time consider booking a flight which can get you there in 4h 40m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 1.2 - 3.0kg. The ticket price range depends on the travel mode: a bus costs an average of $47, and a flight costs an average of $21.
Distance: 738 miles (1188 km)
| Bus | Most popular Flight | Train | Driving |
|---|---|---|---|
$152 Average price Cheapest | $553 Average price | $308 Average price (fuel + tolls) | |
26h 41m Average total duration 26h 11m Onboard + 30m Additional time* | 6h 40m Average total duration Fastest 4h 40m Onboard + 2h 0m Additional time* | 16h 1m Average total duration (door-to-door) | |
1.2 - 3.0kg CO2 emissions Lowest | 3.6 - 7.1kg CO2 emissions | - CO2 emissions | - CO2 emissions |
Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Madrid to Milan:
A bus is $409 (€329) less than a flight for this route with tickets for a flight from Madrid to Milan costing on average $560 (€451).
Other travel options to Milan take longer:
Bus takes on average 26h 11m.
Tickets start at around $152 (€122) compared to roughly $308 (€248) in fuel and tolls — a saving of about $156 (€126). The journey takes 26h 11m versus 16h 1m by car, so you'll arrive a bit later, but you can use the time productively rather than spending it behind the wheel. No parking to sort, no fuel stops, and most coaches have Wi-Fi and power outlets.
Direct services are operated by Alsa, Union Ivkoni International, FlixBus, Infobus.
Driving is worth considering if you're on a tight schedule, travelling as a group (where fuel costs split several ways), or want the flexibility to stop along the way.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Alsa | Departure Time 01:00AM | Arrival Time 12:10AM | Duration 23h10 | Departure days Tue | Cheapest price $99 |
Operator Alsa | Departure Time 01:15AM | Arrival Time 12:10AM | Duration 22h55 | Departure days Tue | Cheapest price $99 |
Operator iryo | Departure Time 06:09AM | Arrival Time 06:55AM | Duration 24h46 | Departure days Mon, Tue, Wed, Thu | Cheapest price $119 |
Operator BlaBlaCar Bus | Departure Time 06:30AM | Arrival Time 06:55AM | Duration 24h25 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $168 |
Operator Alsa | Departure Time 07:00AM | Arrival Time 06:55AM | Duration 23h55 | Departure days Wed, Thu | Cheapest price $99 |
Operator iryo | Departure Time 07:22AM | Arrival Time 09:40AM | Duration 26h18 | Departure days Mon, Tue, Wed, Thu, Fri, Sat | Cheapest price $124 |
Operator iryo | Departure Time 08:22AM | Arrival Time 06:55AM | Duration 22h33 | Departure days Tue, Wed, Thu, Sat, Sun | Cheapest price $115 |
Operator BlaBlaCar Bus | Departure Time 08:35AM | Arrival Time 09:40AM | Duration 25h05 | Departure days Wed, Fri, Sun | Cheapest price $132 |
Operator iryo | Departure Time 08:50AM | Arrival Time 09:40AM | Duration 24h50 | Departure days Everyday | Cheapest price $119 |
Operator iryo | Departure Time 09:57AM | Arrival Time 06:55AM | Duration 20h58 | Departure days Tue, Wed, Thu, Fri, Sat, Sun | Cheapest price $119 |
Operator | Departure Time 10:00AM | Arrival Time 03:30PM | Duration 29h30 | Departure days Tue, Fri, Sun | Cheapest price $125 |
Operator iryo | Departure Time 11:22AM | Arrival Time 06:55AM | Duration 19h33 | Departure days Everyday | Cheapest price $124 |
Operator iryo | Departure Time 12:22PM | Arrival Time 09:40AM | Duration 21h18 | Departure days Wed, Fri, Sat, Sun | Cheapest price $124 |
Operator iryo | Departure Time 02:42PM | Arrival Time 02:05PM | Duration 23h23 | Departure days Fri, Sat, Sun | Cheapest price $218 |
Operator FlixBus | Departure Time 03:55PM | Arrival Time 07:05PM | Duration 27h10 | Departure days Tue, Thu, Sat | Cheapest price $193 |
Operator FlixBus | Departure Time 07:05PM | Arrival Time 06:10PM | Duration 23h05 | Departure days Everyday | Cheapest price $130 |
Operator BlaBlaCar Bus | Departure Time 08:30PM | Arrival Time 12:10AM | Duration 27h40 | Departure days Everyday | Cheapest price $93 |
Operator FlixBus | Departure Time 08:50PM | Arrival Time 12:05AM | Duration 27h15 | Departure days Fri, Sat | Cheapest price $359 |
Operator BlaBlaCar Bus | Departure Time 10:30PM | Arrival Time 05:45AM | Duration 31h15 | Departure days Thu, Fri, Sat, Sun | Cheapest price $143 |
Operator Alsa | Departure Time 11:30PM | Arrival Time 12:10AM | Duration 24h40 | Departure days Mon | Cheapest price $99 |
Operator FlixBus | Departure Time 11:35PM | Arrival Time 05:25AM | Duration 29h50 | Departure days Everyday | Cheapest price $184 |
Operator Alsa | Departure Time 11:45PM | Arrival Time 12:10AM | Duration 24h25 | Departure days Thu | Cheapest price $99 |
Operator Alsa | Departure Time 11:59PM | Arrival Time 12:10AM | Duration 24h11 | Departure days Thu | Cheapest price $99 |
Operator FlixBus | Departure Time 11:59PM | Arrival Time 07:55AM | Duration 31h56 | Departure days Everyday | Cheapest price $196 |
The table below shows live departures for Madrid to Milan buses for today, Friday, August 28. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
4822 · 4732 | 6:30 AM Madrid, Estación Sur de Autobuses | 24h25 | 6:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
06071+ 54152 · 51047 | 7:22 AM Madrid-Puerta de Atocha-Almudena Grandes | 26h18 | 9:40 AM Milano, Autostazione Lampugnano | 2 transfers | |
06071+ 4732 | 7:22 AM Madrid-Puerta de Atocha-Almudena Grandes | 23h33 | 6:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
54152 · 51047 | 8:35 AM Madrid, Estación Sur de Autobuses | 25h05 | 9:40 AM Milano, Autostazione Lampugnano | 1 transfer | |
06281+ 54152 · 51047 | 8:50 AM Madrid-Puerta de Atocha-Almudena Grandes | 24h50 | 9:40 AM Milano, Autostazione Lampugnano | 2 transfers | |
06281+ 4732 | 8:50 AM Madrid-Puerta de Atocha-Almudena Grandes | 22h05 | 6:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
06011+ 3154 · 4767 | 9:57 AM Madrid-Puerta de Atocha-Almudena Grandes | 28h08 | 2:05 PM Milano, Autostazione Lampugnano | 2 transfers | |
06011+ 4732 | 9:57 AM Madrid-Puerta de Atocha-Almudena Grandes | 20h58 | 6:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
06011+ 54152 · 51047 | 9:57 AM Madrid-Puerta de Atocha-Almudena Grandes | 23h43 | 9:40 AM Milano, Autostazione Lampugnano | 2 transfers | |
![]() | 10:00 AM Madrid Mendez Alvaro Estacion Sur | 29h30 | 3:30 PM Milan, Lampugnano (M1) | 0 transfersDirect | |
06111+ 54152 · 51047 | 11:22 AM Madrid-Puerta de Atocha-Almudena Grandes | 22h18 | 9:40 AM Milano, Autostazione Lampugnano | 2 transfers | |
06111+ 3154 · 4767 | 11:22 AM Madrid-Puerta de Atocha-Almudena Grandes | 26h43 | 2:05 PM Milano, Autostazione Lampugnano | 2 transfers | |
06111+ 4732 | 11:22 AM Madrid-Puerta de Atocha-Almudena Grandes | 19h33 | 6:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
06121+ 54152 · 51047 | 12:22 PM Madrid-Puerta de Atocha-Almudena Grandes | 21h18 | 9:40 AM Milano, Autostazione Lampugnano | 2 transfers | |
06121+ 3154 · 4767 | 12:22 PM Madrid-Puerta de Atocha-Almudena Grandes | 25h43 | 2:05 PM Milano, Autostazione Lampugnano | 2 transfers | |
06021+ 3154 · 4767 | 2:42 PM Madrid-Puerta de Atocha-Almudena Grandes | 23h23 | 2:05 PM Milano, Autostazione Lampugnano | 2 transfers | |
FlixBus | 7:05 PM Madrid, Estación Sur de Autobuses | 23h05 | 6:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus · FlixBus | 7:05 PM Madrid, Estación Sur de Autobuses | 27h55 | 11:00 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
FlixBus · FlixBus · FlixBus · FlixBus | 7:05 PM Madrid, Estación Sur de Autobuses | 39h10 | 10:15 AM Milano, Milan Linate Airport | 3 transfers | |
3187 · 94765 | 8:30 PM Madrid, Estación Sur de Autobuses | 24h55 | 9:25 PM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus | 8:50 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 27h15 | 12:05 AM Milano, Autostazione Lampugnano | 2 transfers | |
3160 · 57201 | 10:30 PM Madrid, Estación Sur de Autobuses | 31h15 | 5:45 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus | 11:35 PM Madrid, Estación Sur de Autobuses | 32h20 | 7:55 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
FlixBus · FlixBus | 11:35 PM Madrid, Estación Sur de Autobuses | 29h50 | 5:25 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus · FlixBus | 11:35 PM Madrid, Estación Sur de Autobuses | 36h20 | 11:55 AM Milano, Milan Linate Airport | 3 transfers | |
FlixBus · FlixBus | 11:59 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 29h26 | 5:25 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus | 11:59 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 31h56 | 7:55 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Buses from Madrid to Milan run on average 18 times per day, taking around 26h 14m. Cheap bus tickets for this journey start at $47 (€38) but you can travel from only $21 (€17) by flight.
There are 2 buses per day. The earliest bus runs at 00:14, the last at 23:55. The fastest bus covers the 738 miles (1188 km) distance in 21h 10m.
Distance 738 miles (1188 km) |
Average bus duration 26h 14m |
Cheapest ticket price $47 (€38) |
Buses per day 18 |
Direct buses 2 |
Fastest bus 21h 10m |
First bus 12:14 AM |
Last bus 11:55 PM |
Cheapest Month Mar |
Cheapest Day Sun |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Tue |
Least Busy Day Sun |
Best time to book 6 days |
Discover the best of Milan — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan trip today.
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
This contemporary art museum near Porta Romana presents rotating exhibitions in a striking former industrial distillery complex.
Italy’s leading science museum is set in a former monastery and features Leonardo galleries, trains, aircraft, and a submarine.
Milan’s central square frames the cathedral and major civic buildings, making it the city’s essential meeting point and photo stop.
This artistic district offers charming lanes, Brera atmosphere, boutiques, and easy access to galleries and evening strolls.
A large landscaped park behind the castle, perfect for walks, skyline views, and reaching landmarks like the Arch of Peace.
Saffron risotto cooked with butter, stock and cheese. It is Milan's signature dish, linked to the city's love of rich northern Italian rice cookery.
Breaded veal cutlet fried in butter until golden. A classic Milanese main, prized for its simple preparation and long-standing local tradition.
Slow-braised veal shanks with vegetables, wine and broth, often finished with gremolata. A hearty Lombard specialty commonly paired with risotto.
Three-Michelin-star fine dining by Enrico Bartolini in MUDEC. Expect refined Italian tasting menus in a polished contemporary setting.
Historic Milanese restaurant near the Duomo, famous for risotto and cotoletta. Traditional, elegant rooms and a strong local culinary identity.
Long-running local favorite for classic Milanese cuisine, especially risotto and ossobuco. Warm, old-school atmosphere in the Brera area.
Moderate for Western Europe. Hotels and central dining can be pricey, but transit is affordable and budget meals, aperitivo deals, and local cafes help keep daily costs reasonable.
Tipping is modest. Service may be included. Round up or leave €1-2 at cafes, 5-10% for good restaurant service, and round up taxi fares.
Official public transport app
Orio al Serio, Milan Bergamo Airport (Bus station) -> Milano Centrale, Milan
Find answers to the most common questions about traveling from Madrid to Milan by bus. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest bus, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Most Madrid to Milan buses use the Madrid, Estación Sur de Autobuses to Milano, Autostazione Lampugnano station pair, with some services arriving at Milano, Aeroporto di Milano Linate. Use this guide to compare Madrid and Milan bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Madrid, Estación Sur de Autobuses is 3 km from Madrid city centre. Public transport options include:
Madrid, Estación Sur de Autobuses has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafetería de la estación (in the station), Restaurante El Brillante (0.5 km), La Taberna de Domínguez (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance and in the waiting area.
Ticket office support is available at Madrid, Estación Sur de Autobuses.
Available at Madrid, Estación Sur de Autobuses: Parking, Taxis, WC.
Accessibility facilities are available at Madrid, Estación Sur de Autobuses: Elevators, ramps.
Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) is 12 km from Madrid city centre. Public transport options include:
Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) has practical services for this route, including Dining, ATM, Accessibility, WC, Shower, and Ticket Office.
Food options include: Rodilla, Mahoudrid
ATMs are aTMs located throughout T4, major cards accepted .
Ticket office support is available at Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid).
Available at Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid): WC.
Accessibility facilities are available at Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid): Step-free access, elevators, accessible toilets.
Madrid, Avenida de América is 3 km from Madrid city centre. Public transport options include:
Madrid, Avenida de América has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafetería de la estación (in the station), Restaurante El Rincón (0.5 km), La Vaca Argentina (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance and on the second floor.
Ticket office support is available at Madrid, Avenida de América.
Available at Madrid, Avenida de América: Parking, Taxis, WC.
Accessibility facilities are available at Madrid, Avenida de América: Elevators, ramps.
Milano, Autostazione Lampugnano is 5 km from Milan city centre. Public transport options include:
Milano, Autostazione Lampugnano has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Lampugnano (in the station), Trattoria Milano (0.5 km), Pizza Express (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance.
Ticket office support is available at Milano, Autostazione Lampugnano.
Available at Milano, Autostazione Lampugnano: Parking, Taxis, WC.
Accessibility facilities are available at Milano, Autostazione Lampugnano: Elevators, ramps.
Milano, San Donato - Settore B (Viale Giuseppe Impastato) is 6 km from Milan city centre. Public transport options include:
Milano, San Donato - Settore B (Viale Giuseppe Impastato) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Italiana (in the station), Fast Food Express (in the station), Trattoria Milano (0.5 km).
Free Wi-Fi. ATMs are located near the main entrance for cash withdrawals.
Ticket office support is available at Milano, San Donato - Settore B (Viale Giuseppe Impastato).
Available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Parking, Taxis, WC.
Accessibility facilities are available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Elevators, ramps.
Here are some other resources that might have the information you need