- Must visit
Serralves Museum
Contemporary art museum in a landmark Álvaro Siza building with major Portuguese and international exhibitions and a superb surrounding park.
Cheapest price on Sep 17
$17
Average ticket price on Sep 17
$49
Fastest journey on Sep 17
6 h 15 m
Average journey duration on Sep 17
7 h 23 m
Buses on Sep 17
19
Distance
421 km
The best way to find a cheap bus ticket from Madrid to Porto is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Madrid to Porto will cost around $49 if you buy it on the day, but the cheapest tickets can be found for only $17.
On Thu, Sep 17, we found 19 buses from Madrid to Porto, including 17 direct services.
On Thu, Sep 17 the direct buses cover the 421 km distance in an average of 7 h 23 m but if you time it right, some buses will get you there in just 6 h 15 m .
On Thu, Sep 17 the slowest buses will take 7 h 54 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.
54153

Normal
Normal
54153
Normal
Normal
NormalOmio recommends booking the flight as it is the most popular option from Madrid to Porto among Omio's users. If you are prioritising price, take the train, with an average ticket price of $20 For those with little time, consider booking a flight, which has an average total journey time of 4h 35m. If you are seeking to minimise your carbon footprint, the train is your best option, with estimated CO2 emissions of 0.1 - 0.4kg. Average ticket prices depend on the travel mode: a train costs an average of $20, while a flight costs an average of $250.
Distance: 261 miles (421 km)
| Bus | Most popular Flight | Train | Driving |
|---|---|---|---|
$42 Average price | $250 Average price | $20 Average price Cheapest | $115 Average price (fuel + tolls) |
10h 20m Average total duration 9h 50m Onboard + 30m Additional time* | 4h 35m Average total duration Fastest 2h 35m Onboard + 2h 0m Additional time* | 7h 4m Average total duration 6h 34m Onboard + 30m Additional time* | 5h 53m Average total duration (door-to-door) |
0.4 - 1.1kg CO2 emissions | 1.3 - 2.5kg CO2 emissions | 0.1 - 0.4kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular airline | ![]() Most popular train company | Your own car or car rental |
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 Porto:
A train is $22 (€18) less than a bus for this route with tickets for a bus from Madrid to Porto costing on average $42 (€34).
A train is $230 (€187) less than a flight for this route with tickets for a flight from Madrid to Porto costing on average $250 (€203).
Other travel options to Porto take longer:
Train takes on average 6h 34m.
Bus takes on average 9h 50m.
Tickets start at around $42 (€34) compared to roughly $115 (€93) in fuel and tolls — a saving of about $73 (€59). The journey takes 9h 50m versus 5h 53m 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 FlixBus, Alsa, BlaBlaCar Bus, Gipsyy.
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 12:05AM | Arrival Time 01:30PM | Duration 14h25 | Departure days Mon, Fri, Sat, Sun | Cheapest price $30 |
Operator FlixBus | Departure Time 12:15AM | Arrival Time 07:25AM | Duration 8h10 | Departure days Mon, Tue, Sat, Sun | Cheapest price $23 |
Operator Alsa | Departure Time 12:30AM | Arrival Time 12:30PM | Duration 13h00 | Departure days Mon, Fri, Sat, Sun | Cheapest price $30 |
Operator FlixBus | Departure Time 12:45AM | Arrival Time 07:25AM | Duration 7h40 | Departure days Mon, Tue, Sat, Sun | Cheapest price $15 |
Operator Alsa | Departure Time 09:15AM | Arrival Time 04:54PM | Duration 8h39 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $15 |
Operator Gipsyy | Departure Time 09:15AM | Arrival Time 04:54PM | Duration 8h39 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $15 |
Operator FlixBus | Departure Time 09:25AM | Arrival Time 05:40PM | Duration 9h15 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $22 |
Operator Alsa | Departure Time 09:30AM | Arrival Time 08:20PM | Duration 11h50 | Departure days Mon, Tue, Fri, Sat, Sun | Cheapest price $52 |
Operator Internorte | Departure Time 09:30AM | Arrival Time 08:20PM | Duration 11h50 | Departure days Mon, Tue, Fri, Sat, Sun | Cheapest price $52 |
Operator Gipsyy | Departure Time 10:00AM | Arrival Time 04:54PM | Duration 7h54 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $15 |
Operator Alsa | Departure Time 10:00AM | Arrival Time 04:54PM | Duration 7h54 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $15 |
Operator FlixBus | Departure Time 10:00AM | Arrival Time 05:40PM | Duration 8h40 | Departure days Mon, Tue, Thu, Fri, Sat, Sun | Cheapest price $15 |
Operator Alsa | Departure Time 10:30AM | Arrival Time 10:45PM | Duration 13h15 | Departure days Mon, Tue, Fri, Sat, Sun | Cheapest price $27 |
Operator BlaBlaCar | Departure Time 11:00AM | Arrival Time 03:20PM | Duration 4h20 | Departure days Fri | Cheapest price $43 |
Operator BlaBlaCar | Departure Time 12:00PM | Arrival Time 05:10PM | Duration 5h10 | Departure days Sun | Cheapest price $39 |
Operator Internorte | Departure Time 02:00PM | Arrival Time 02:30AM | Duration 13h30 | Departure days Fri, Sun | Cheapest price $37 |
Operator Alsa | Departure Time 02:00PM | Arrival Time 02:30AM | Duration 13h30 | Departure days Fri, Sun | Cheapest price $37 |
Operator BlaBlaCar Bus | Departure Time 02:10PM | Arrival Time 07:25PM | Duration 6h15 | Departure days Mon, Thu, Sat | Cheapest price $17 |
Operator BlaBlaCar | Departure Time 03:30PM | Arrival Time 09:20PM | Duration 5h50 | Departure days Fri | Cheapest price $38 |
Operator Alsa | Departure Time 03:45PM | Arrival Time 11:59PM | Duration 9h14 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $15 |
Operator Alsa | Departure Time 04:15PM | Arrival Time 11:14PM | Duration 7h59 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price $15 |
Operator BlaBlaCar | Departure Time 05:00PM | Arrival Time 10:10PM | Duration 5h10 | Departure days Fri | Cheapest price $63 |
Operator BlaBlaCar | Departure Time 07:30PM | Arrival Time 12:10AM | Duration 4h40 | Departure days Thu | Cheapest price $47 |
Operator Alsa | Departure Time 11:00PM | Arrival Time 06:14AM | Duration 8h14 | Departure days Everyday | Cheapest price $22 |
Operator BlaBlaCar | Departure Time 11:00PM | Arrival Time 04:40AM | Duration 5h40 | Departure days Wed | Cheapest price $75 |
Operator Gipsyy | Departure Time 11:00PM | Arrival Time 06:14AM | Duration 8h14 | Departure days Everyday | Cheapest price $18 |
Operator FlixBus | Departure Time 11:00PM | Arrival Time 06:30AM | Duration 8h30 | Departure days Everyday | Cheapest price $31 |
Operator FlixBus | Departure Time 11:30PM | Arrival Time 06:30AM | Duration 8h00 | Departure days Everyday | Cheapest price $20 |
Operator Alsa | Departure Time 11:45PM | Arrival Time 06:14AM | Duration 7h29 | Departure days Everyday | Cheapest price $22 |
Operator Gipsyy | Departure Time 11:45PM | Arrival Time 06:14AM | Duration 7h29 | Departure days Everyday | Cheapest price $18 |
Operator BlaBlaCar Bus | Departure Time 11:45PM | Arrival Time 02:10PM | Duration 15h25 | Departure days Sun | Cheapest price $27 |
The table below shows live departures for Madrid to Porto buses for today, Wednesday, September 16. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
Normal | 3:45 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h44 | 11:29 PM Porto, Polo Universitario (Bus Terminal) | 0 transfersDirect | |
Normal | 3:45 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h29 | 11:14 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 3:45 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 9h14 | 11:59 PM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
Normal | 4:15 PM Madrid, Estación Sur de Autobuses | 7h59 | 11:14 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 4:15 PM Madrid, Estación Sur de Autobuses | 8h14 | 11:29 PM Porto, Polo Universitario (Bus Terminal) | 0 transfersDirect | |
Normal | 4:15 PM Madrid, Estación Sur de Autobuses | 8h44 | 11:59 PM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
FlixBus | 11:00 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h30 | 6:30 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 11:00 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h14 | 6:14 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 11:00 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h35 | 6:35 AM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
![]() | 11:00 PM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h14 | 6:14 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
FlixBus | 11:30 PM Madrid, Estación Sur de Autobuses | 8h00 | 6:30 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
![]() | 11:45 PM Madrid, Estación Sur de Autobuses | 7h29 | 6:14 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 11:45 PM Madrid, Estación Sur de Autobuses | 7h29 | 6:14 AM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 11:45 PM Madrid, Estación Sur de Autobuses | 7h50 | 6:35 AM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
| Thursday, September 17 | |||||
Normal | 9:15 AM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h39 | 4:54 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 9:15 AM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 9h30 | 5:45 PM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
![]() | 9:15 AM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 8h39 | 4:54 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
FlixBus | 9:25 AM Madrid, Terminal de autobuses T4 (Aeropuerto de Madrid) | 9h15 | 5:40 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
FlixBus | 10:00 AM Madrid, Estación Sur de Autobuses | 8h40 | 5:40 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
![]() | 10:00 AM Madrid, Estación Sur de Autobuses | 7h54 | 4:54 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 10:00 AM Madrid, Estación Sur de Autobuses | 7h54 | 4:54 PM Porto, Terminal Intermodal de Campanhã | 0 transfersDirect | |
Normal | 10:00 AM Madrid, Estación Sur de Autobuses | 8h45 | 5:45 PM Maia, Porto (Aeroporto Sa Carneiro) | 0 transfersDirect | |
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 Porto run on average 27 times per day, taking around 9h 50m. Cheap bus tickets for this journey start at $7 (€6) if you book in advance.
There are 19 buses per day. The earliest bus runs at 00:05, the last at 23:55. The fastest bus covers the 261 miles (421 km) distance in 6h 15m.
Distance 261 miles (421 km) |
Average bus duration 9h 50m |
Cheapest ticket price $7 (€6) |
Buses per day 27 |
Direct buses 19 |
Fastest bus 6h 15m |
First bus 12:05 AM |
Last bus 11:55 PM |
Cheapest Month Nov |
Cheapest Day Sat |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Tue |
Least Busy Day Mon |
Best time to book 77 days |
Discover the best of Porto — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Porto trip today.
Contemporary art museum in a landmark Álvaro Siza building with major Portuguese and international exhibitions and a superb surrounding park.
Museum dedicated to Porto-born artist Júlio Dinis?
Leading Portuguese photography museum inside a former prison. Visit for rotating exhibitions and the striking historic building.
Colorful UNESCO riverside quarter lined with historic buildings and lively public spaces. Ideal for first-time visitors, photos, and Douro views.
Grand central avenue framed by stately buildings and City Hall. A key promenade for architecture, events, and easy orientation in the center.
Elegant garden terraces beside the old walls with sweeping Douro and bridge views. Excellent at sunset and a favorite local walking spot.
Porto’s iconic sandwich with steak, sausage and ham, covered in melted cheese and spicy beer sauce. A rich local classic tied to the city’s tavern culture.
Slow-cooked tripe stew with white beans, sausage and meats. It reflects Porto’s historic nickname tripeiros and is one of the city’s most traditional dishes.
Salt cod baked with cream, onion and potatoes. Bacalhau is central to Portuguese cooking, and this comforting version is widely loved in Porto.
Traditional beer hall famous for francesinha and casual local atmosphere. A long-standing favorite for Porto’s signature sandwich.
Established seafood restaurant celebrated for shellfish, grilled fish and classic northern Portuguese cooking in a traditional setting.
Refined restaurant by chef Rui Paula serving modern Portuguese cuisine in an elegant riverside setting near the Douro.
Moderate for Western Europe: lodging is often cheaper than Lisbon, meals are reasonable, and local transit is low cost for tourists.
Service is usually included. Round up or leave 5-10% at restaurants for good service. Small change is fine for cafes and taxis; tipping is appreciated, not required.
Official public transport app
Terminal Intermodal de Campanhã -> Trindade Station, Porto
Find answers to the most common questions about traveling from Madrid to Porto 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 Porto, this guide helps you travel smarter and with confidence.

Most Madrid to Porto buses use the Madrid, Estación Sur de Autobuses to Porto, Terminal Intermodal de Campanhã station pair, with some services arriving at Porto, Aeroporto Francisco Sá Carneiro. Use this guide to compare Madrid and Porto 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.
Porto, Terminal Intermodal de Campanhã is 2 km from Porto city centre. Public transport options include:
Porto, Terminal Intermodal de Campanhã has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafetaria Terminal (in the station), Restaurante Campanhã (0.5 km), Tasquinha do Caco (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance.
Ticket office support is available at Porto, Terminal Intermodal de Campanhã.
Available at Porto, Terminal Intermodal de Campanhã: Parking, Taxis, WC.
Accessibility facilities are available at Porto, Terminal Intermodal de Campanhã: Elevators.
Here are some other resources that might have the information you need