- Recommended
Museu do Palácio de Mateus
Museum housed at Palácio de Mateus, presenting family collections, period interiors, manuscripts, and decorative arts in an iconic estate.
Cheapest price on Sep 18
kr29
Average ticket price on Sep 18
kr100
Fastest journey on Sep 18
1 h
Average journey duration on Sep 18
1 h
Buses on Sep 18
93
Distance
74 km
The best way to find a cheap bus ticket from Porto to Vila Real is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Porto to Vila Real will cost around kr100 if you buy it on the day, but the cheapest tickets can be found for only kr29.
On Fri, Sep 18, we found 93 buses from Porto to Vila Real, including 83 direct services.
On Fri, Sep 18 the direct buses cover the 74 km distance in an average of 1 h but if you time it right, some buses will get you there in just 1 h .
On Fri, Sep 18 the slowest buses will take 1 h 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.
FlixBus
FlixBus
FlixBus
FlixBus
3168




Omio recommends booking the bus as it is the most popular option from Porto to Vila Real among Omio's users. If you are prioritising price, take the bus, with an average ticket price of kr96 For those with little time, consider booking a bus, which has an average total journey time of 1h 54m. Average ticket prices depend on the travel mode: a bus costs an average of kr96, while a bus costs an average of kr96.
Distance: 45 miles (74 km)
Most popular Bus | Driving |
|---|---|
kr96 Average price Cheapest | kr234 Average price (fuel + tolls) |
1h 54m Average total duration Fastest 1h 24m Onboard + 30m Additional time* | 1h 5m Average total duration (door-to-door) |
![]() Most popular bus company | Your own car or car rental |
Direct Options | Direct Options |
Tickets start at around kr96 compared to roughly kr234 in fuel and tolls — a saving of about kr139. The journey takes 1h 24m versus 1h 5m 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 Rodonotre, Rede Expressos, FlixBus, BlaBlaCar Bus, Citi Express, Alsa.
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 Rede Expressos | Departure Time 12:00AM | Arrival Time 01:10AM | Duration 1h10 | Departure days Mon, Sat | Cheapest price kr121 |
Operator Rodonotre | Departure Time 06:30AM | Arrival Time 08:35AM | Duration 2h05 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price kr79 |
Operator Rodonotre | Departure Time 07:00AM | Arrival Time 08:35AM | Duration 1h35 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price kr79 |
Operator Rodonotre | Departure Time 07:15AM | Arrival Time 08:35AM | Duration 1h20 | Departure days Mon, Tue, Wed, Fri, Sat, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 07:20AM | Arrival Time 10:00AM | Duration 2h40 | Departure days Everyday | Cheapest price kr138 |
Operator Rodonotre | Departure Time 07:45AM | Arrival Time 09:05AM | Duration 1h20 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator BlaBlaCar | Departure Time 08:00AM | Arrival Time 09:10AM | Duration 1h10 | Departure days Thu | Cheapest price kr62 |
Operator Rodonotre | Departure Time 08:00AM | Arrival Time 09:05AM | Duration 1h05 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator Rodonotre | Departure Time 08:15AM | Arrival Time 09:35AM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 08:30AM | Arrival Time 09:35AM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Alsa | Departure Time 08:45AM | Arrival Time 10:00AM | Duration 1h15 | Departure days Mon, Fri, Sat, Sun | Cheapest price kr219 |
Operator Rede Expressos | Departure Time 09:00AM | Arrival Time 10:50AM | Duration 1h50 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 09:00AM | Arrival Time 10:20AM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 09:15AM | Arrival Time 10:35AM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 09:15AM | Arrival Time 10:20AM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 09:30AM | Arrival Time 10:35AM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 10:00AM | Arrival Time 12:25PM | Duration 2h25 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 10:00AM | Arrival Time 11:10AM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 10:05AM | Arrival Time 12:25PM | Duration 2h20 | Departure days Everyday | Cheapest price kr138 |
Operator Rodonotre | Departure Time 10:15AM | Arrival Time 11:15AM | Duration 1h00 | Departure days Mon | Cheapest price kr79 |
Operator FlixBus | Departure Time 10:25AM | Arrival Time 11:45AM | Duration 1h20 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price kr29 |
Operator Rodonotre | Departure Time 10:30AM | Arrival Time 11:50AM | Duration 1h20 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator Rodonotre | Departure Time 10:45AM | Arrival Time 11:50AM | Duration 1h05 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 11:00AM | Arrival Time 01:15PM | Duration 2h15 | Departure days Everyday | Cheapest price kr138 |
Operator Rodonotre | Departure Time 11:00AM | Arrival Time 12:25PM | Duration 1h25 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 11:15AM | Arrival Time 12:25PM | Duration 1h10 | Departure days Everyday | Cheapest price kr79 |
Operator Citi Express | Departure Time 11:50AM | Arrival Time 01:55PM | Duration 2h05 | Departure days Everyday | Cheapest price kr138 |
Operator Rede Expressos | Departure Time 12:00PM | Arrival Time 01:15PM | Duration 1h15 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 12:15PM | Arrival Time 01:15PM | Duration 1h00 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 12:15PM | Arrival Time 01:35PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator BlaBlaCar | Departure Time 12:30PM | Arrival Time 01:00PM | Duration 0h30 | Departure days Thu | Cheapest price kr49 |
Operator Rodonotre | Departure Time 12:30PM | Arrival Time 02:20PM | Duration 1h50 | Departure days Everyday | Cheapest price kr79 |
Operator FlixBus | Departure Time 12:45PM | Arrival Time 02:05PM | Duration 1h20 | Departure days Everyday | Cheapest price kr29 |
Operator Citi Express | Departure Time 12:45PM | Arrival Time 01:55PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 01:00PM | Arrival Time 02:20PM | Duration 1h20 | Departure days Mon, Tue, Wed, Thu, Fri, Sat | Cheapest price kr79 |
Operator Rodonotre | Departure Time 01:15PM | Arrival Time 02:20PM | Duration 1h05 | Departure days Mon, Tue, Wed, Thu, Fri, Sat | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 01:30PM | Arrival Time 02:40PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rede Expressos | Departure Time 01:35PM | Arrival Time 03:40PM | Duration 2h05 | Departure days Everyday | Cheapest price kr138 |
Operator Rodonotre | Departure Time 02:15PM | Arrival Time 03:35PM | Duration 1h20 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator BlaBlaCar | Departure Time 02:30PM | Arrival Time 03:40PM | Duration 1h10 | Departure days Sun | Cheapest price kr46 |
Operator Rede Expressos | Departure Time 02:30PM | Arrival Time 03:40PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 02:30PM | Arrival Time 03:35PM | Duration 1h05 | Departure days Mon, Tue, Wed, Thu, Fri | Cheapest price kr79 |
Operator Citi Express | Departure Time 02:50PM | Arrival Time 04:35PM | Duration 1h45 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 03:00PM | Arrival Time 04:15PM | Duration 1h15 | Departure days Everyday | Cheapest price kr79 |
Operator Citi Express | Departure Time 03:15PM | Arrival Time 04:35PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 03:15PM | Arrival Time 04:15PM | Duration 1h00 | Departure days Everyday | Cheapest price kr79 |
Operator BlaBlaCar | Departure Time 03:30PM | Arrival Time 05:20PM | Duration 1h50 | Departure days Sun | Cheapest price kr57 |
Operator Rodonotre | Departure Time 03:30PM | Arrival Time 04:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator FlixBus | Departure Time 03:35PM | Arrival Time 04:55PM | Duration 1h20 | Departure days Everyday | Cheapest price kr29 |
Operator FlixBus | Departure Time 03:45PM | Arrival Time 05:05PM | Duration 1h20 | Departure days Everyday | Cheapest price kr29 |
Operator Rodonotre | Departure Time 03:45PM | Arrival Time 04:50PM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 04:00PM | Arrival Time 05:50PM | Duration 1h50 | Departure days Everyday | Cheapest price kr79 |
Operator Citi Express | Departure Time 04:00PM | Arrival Time 05:20PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 04:30PM | Arrival Time 05:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 04:45PM | Arrival Time 05:50PM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 05:00PM | Arrival Time 06:20PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 05:00PM | Arrival Time 06:15PM | Duration 1h15 | Departure days Everyday | Cheapest price kr63 |
Operator BlaBlaCar | Departure Time 05:00PM | Arrival Time 06:10PM | Duration 1h10 | Departure days Thu | Cheapest price kr126 |
Operator Rodonotre | Departure Time 05:15PM | Arrival Time 06:20PM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 05:15PM | Arrival Time 09:45PM | Duration 4h30 | Departure days Everyday | Cheapest price kr121 |
Operator Rede Expressos | Departure Time 05:30PM | Arrival Time 06:40PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 05:30PM | Arrival Time 06:55PM | Duration 1h25 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 05:45PM | Arrival Time 06:55PM | Duration 1h10 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 05:45PM | Arrival Time 06:55PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 06:00PM | Arrival Time 07:50PM | Duration 1h50 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 06:15PM | Arrival Time 07:30PM | Duration 1h15 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 06:30PM | Arrival Time 07:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 06:45PM | Arrival Time 07:50PM | Duration 1h05 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 07:00PM | Arrival Time 08:35PM | Duration 1h35 | Departure days Everyday | Cheapest price kr79 |
Operator Citi Express | Departure Time 07:00PM | Arrival Time 08:50PM | Duration 1h50 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 07:15PM | Arrival Time 08:35PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Citi Express | Departure Time 07:30PM | Arrival Time 08:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator FlixBus | Departure Time 07:30PM | Arrival Time 08:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr29 |
Operator Rodonotre | Departure Time 07:45PM | Arrival Time 09:05PM | Duration 1h20 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 08:15PM | Arrival Time 09:35PM | Duration 1h20 | Departure days Mon, Tue, Wed, Thu, Fri, Sun | Cheapest price kr79 |
Operator Rodonotre | Departure Time 08:30PM | Arrival Time 09:35PM | Duration 1h05 | Departure days Mon, Tue, Wed, Thu, Fri, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 08:30PM | Arrival Time 10:40PM | Duration 2h10 | Departure days Everyday | Cheapest price kr138 |
Operator Rodonotre | Departure Time 08:45PM | Arrival Time 10:10PM | Duration 1h25 | Departure days Sun | Cheapest price kr102 |
Operator Rodonotre | Departure Time 09:00PM | Arrival Time 10:10PM | Duration 1h10 | Departure days Sun | Cheapest price kr102 |
Operator Rodonotre | Departure Time 09:15PM | Arrival Time 10:50PM | Duration 1h35 | Departure days Everyday | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 09:30PM | Arrival Time 10:40PM | Duration 1h10 | Departure days Everyday | Cheapest price kr121 |
Operator Rodonotre | Departure Time 09:30PM | Arrival Time 10:50PM | Duration 1h20 | Departure days Everyday | Cheapest price kr79 |
Operator Rodonotre | Departure Time 10:00PM | Arrival Time 11:20PM | Duration 1h20 | Departure days Thu, Fri, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 10:05PM | Arrival Time 12:10AM | Duration 2h05 | Departure days Fri | Cheapest price kr138 |
Operator Rodonotre | Departure Time 10:15PM | Arrival Time 11:20PM | Duration 1h05 | Departure days Thu, Fri, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 10:30PM | Arrival Time 11:45PM | Duration 1h15 | Departure days Fri, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 10:45PM | Arrival Time 11:45PM | Duration 1h00 | Departure days Fri, Sun | Cheapest price kr79 |
Operator Rede Expressos | Departure Time 11:00PM | Arrival Time 12:10AM | Duration 1h10 | Departure days Fri | Cheapest price kr121 |
Operator Rede Expressos | Departure Time 11:05PM | Arrival Time 01:10AM | Duration 2h05 | Departure days Fri, Sun | Cheapest price kr138 |
Operator FlixBus | Departure Time 11:35PM | Arrival Time 12:45AM | Duration 1h10 | Departure days Thu, Fri, Sat, Sun | Cheapest price kr121 |
Operator BlaBlaCar Bus | Departure Time 11:55PM | Arrival Time 01:10AM | Duration 1h15 | Departure days Wed, Fri, Sat | Cheapest price kr57 |
The table below shows live departures for Porto to Vila Real buses for today, Thursday, September 17. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
![]() | 8:00 AM Porto, Polo Universitario (Bus Terminal) | 1h05 | 9:05 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 8:15 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 9:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 8:30 AM Porto, Polo Universitario (Bus Terminal) | 1h05 | 9:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:00 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 10:20 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:00 AM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 10:50 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:15 AM Porto, Polo Universitario (Bus Terminal) | 1h05 | 10:20 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:15 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 10:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:30 AM Porto, Polo Universitario (Bus Terminal) | 1h05 | 10:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:30 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 10:50 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 10:00 AM Porto, Terminal Intermodal de Campanhã | 1h10 | 11:10 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
49+ 52 | 10:00 AM Porto, Aeroporto Francisco Sá Carneiro | 2h25 | 12:25 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
15+ 52 | 10:05 AM Porto, Aeroporto Francisco Sá Carneiro | 2h20 | 12:25 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
FlixBus | 10:25 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 11:45 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 10:30 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 11:50 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 10:45 AM Porto, Polo Universitario (Bus Terminal) | 1h05 | 11:50 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 11:00 AM Porto, Terminal Intermodal de Campanhã | 1h25 | 12:25 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
11+ 13 | 11:00 AM Porto, Aeroporto Francisco Sá Carneiro | 2h15 | 1:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 11:15 AM Porto, Polo Universitario (Bus Terminal) | 1h10 | 12:25 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
4+ 50 | 11:50 AM Porto, Aeroporto Francisco Sá Carneiro | 2h05 | 1:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 12:00 PM Porto, Terminal Intermodal de Campanhã | 1h15 | 1:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 12:15 PM Porto, Polo Universitario (Bus Terminal) | 1h00 | 1:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 12:15 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 1:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 12:30 PM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 2:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 12:30 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 1:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
FlixBus | 12:45 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 2:05 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 12:45 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 1:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 1:00 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 2:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 1:15 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 2:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 1:30 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 2:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
27 · 50 | 1:35 PM Porto, Aeroporto Francisco Sá Carneiro | 2h05 | 3:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 2:15 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 3:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 2:30 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 3:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 2:30 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 3:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 2:50 PM Porto, Aeroporto Francisco Sá Carneiro | 1h45 | 4:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 3:00 PM Porto, Terminal Intermodal de Campanhã | 1h15 | 4:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 3:15 PM Porto, Polo Universitario (Bus Terminal) | 1h00 | 4:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 3:15 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 4:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 3:30 PM Porto, Aeroporto Francisco Sá Carneiro | 1h20 | 4:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
FlixBus | 3:35 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 4:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
FlixBus | 3:45 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 5:05 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 3:45 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 4:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 4:00 PM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 5:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 4:00 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 5:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 4:30 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 5:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 4:30 PM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 6:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 4:45 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 5:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:00 PM Porto, Aeroporto Francisco Sá Carneiro | 1h55 | 6:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:00 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 6:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:00 PM Porto, Terminal Intermodal de Campanhã | 1h15 | 6:15 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
14+ 23 | 5:15 PM Porto, Terminal Intermodal de Campanhã | 4h30 | 9:45 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 5:15 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 6:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:30 PM Porto, Terminal Intermodal de Campanhã | 1h25 | 6:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:30 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 6:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:45 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 6:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 5:45 PM Porto, Polo Universitario (Bus Terminal) | 1h10 | 6:55 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 6:00 PM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 7:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 6:15 PM Porto, Terminal Intermodal de Campanhã | 1h15 | 7:30 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 6:30 PM Porto, Polo Universitario (Bus Terminal) | 1h00 | 7:30 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 6:30 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 7:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 6:45 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 7:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:00 PM Porto, Aeroporto Francisco Sá Carneiro | 1h50 | 8:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:00 PM Porto, Terminal Intermodal de Campanhã | 1h35 | 8:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:15 PM Porto, Polo Universitario (Bus Terminal) | 1h20 | 8:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
FlixBus | 7:30 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 8:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:30 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 8:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:45 PM Porto, Terminal Intermodal de Campanhã | 1h00 | 8:45 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:45 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 9:05 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 8:15 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 9:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
11+ 23 | 8:30 PM Porto, Aeroporto Francisco Sá Carneiro | 2h10 | 10:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 8:30 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 9:35 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 8:30 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 9:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:15 PM Porto, Terminal Intermodal de Campanhã | 1h35 | 10:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:30 PM Porto, Polo Universitario (Bus Terminal) | 1h20 | 10:50 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 9:30 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 10:40 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 10:00 PM Porto, Terminal Intermodal de Campanhã | 1h20 | 11:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 10:15 PM Porto, Polo Universitario (Bus Terminal) | 1h05 | 11:20 PM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
FlixBus | 11:35 PM Porto, Terminal Intermodal de Campanhã | 1h10 | 12:45 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
| Friday, September 18 | |||||
![]() | 6:30 AM Porto, Aeroporto Francisco Sá Carneiro | 2h05 | 8:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:00 AM Porto, Terminal Intermodal de Campanhã | 1h35 | 8:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
![]() | 7:15 AM Porto, Polo Universitario (Bus Terminal) | 1h20 | 8:35 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
40 · 58 | 7:20 AM Porto, Aeroporto Francisco Sá Carneiro | 2h40 | 10:00 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 1 transfer | |
![]() | 7:45 AM Porto, Terminal Intermodal de Campanhã | 1h20 | 9:05 AM Vila Real, Rua Doutor António Valente (Terminal Rodoviário) | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare bus 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 Porto to Vila Real run on average 60 times per day, taking around 1h 24m. Cheap bus tickets for this journey start at kr29 if you book in advance.
There are 51 buses per day. The earliest bus runs at 06:00, the last at 23:55. The fastest bus covers the 45 miles (74 km) distance in 1h 0m.
Distance 45 miles (74 km) |
Average bus duration 1h 24m |
Cheapest ticket price kr29 |
Buses per day 60 |
Direct buses 51 |
Fastest bus 1h 0m |
First bus 6:00 AM |
Last bus 11:55 PM |
Cheapest Month Dec |
Cheapest Day Sat |
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 Vila Real — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Vila Real trip today.
Museum housed at Palácio de Mateus, presenting family collections, period interiors, manuscripts, and decorative arts in an iconic estate.
University museum with zoology, geology, and natural history collections. Worth visiting for science displays and a different side of Vila Real.
Small university museum focused on geology and regional natural heritage. A useful stop for visitors interested in landscapes and earth sciences.
Landscaped gardens of the Mateus estate, famous for geometric design and reflections. A standout walking area paired with the palace visit.
Historic main avenue lined with civic buildings and shops. A practical starting point for walking the center and observing everyday city life.
Central square that functions as a local meeting point. Visit for architecture, events, and easy access to surrounding historic streets.
Smoked pork sausages from the Trás-os-Montes area, often grilled or served in stews. They are a hallmark of mountain preservation traditions.
A hearty codfish dish baked with potatoes, onion, olive oil and often cured ham. It is widely eaten in Vila Real and the Douro interior.
Slow-roasted kid goat, usually seasoned with garlic, wine and herbs. It is a festive regional classic for family meals and celebrations.
Refined regional dining in a historic manor setting, known for Trás-os-Montes flavors, polished service and a strong wine list.
Traditional restaurant serving grilled meats, regional sausages and hearty northern Portuguese dishes in a relaxed local atmosphere.
Popular local spot for classic Portuguese comfort food, with a casual setting and reliable regional specialties.
More affordable than Lisbon or Porto; hotels, meals, and local transport are generally lower, making Vila Real a good value for travelers.
Tipping is optional. In restaurants, round up or leave 5-10% for good service. Taxis are usually rounded up. In cafés, small change is enough.
Official public transport app
Rua Doutor António Valente (Terminal Rodoviário) -> Avenida Carvalho Araújo, Vila Real
Find answers to the most common questions about traveling from Porto to Vila Real 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 Vila Real, this guide helps you travel smarter and with confidence.

Most Porto to Vila Real buses use the Porto, Terminal Intermodal de Campanhã to Vila Real, Rua Doutor António Valente (Terminal Rodoviário) station pair. Use this guide to compare Porto and Vila Real bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
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