Milan to Porto bus with FlixBus

Thu, Nov 27
+ Add return
FlixBus
BlaBlaCar Bus
Alsa
Rede Expressos
SARFA S.L.
1,000+ travel companies
FlixBus
BlaBlaCar Bus
Alsa
Rede Expressos
SARFA S.L.
1,000+ travel companies
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

The cheapest and fastest buses from Milan to Porto

Showing times and prices for Nov 27

Cheapest price

$159

Average price

$184

Fastest journey

1 d 8 h 15 m

Average duration

1 d 10 h 58 m

Buses per day

5

Distance

1514 km

Cheap tickets

The best way to find a cheap bus ticket from Milan to Porto is to book your journey as far in advance as possible and to avoid traveling at rush hour.

The average ticket from Milan to Porto will cost around $184 if you buy it on the day, but the cheapest tickets can be found for only $159.

Fast buses

It's difficult to get from Milan to Porto without transferring at least once.

FlixBusFlixBus · FlixBus · FlixBus
09:00PM35h35
Milano, Milan Linate Airport
07:35AMPorto, Terminal Intermodal de Campanhã
$1591One-way
2 transfers
FlixBusFlixBus · FlixBus
07:25AM32h15
Milano, Autostazione Lampugnano
02:40PMPorto, Terminal Intermodal de Campanhã
$1651One-way
1 transfer
FlixBusFlixBus · FlixBus
11:25AM36h20
Milano, Autostazione Lampugnano
10:45PMPorto, Terminal Intermodal de Campanhã
$1911One-way
1 transfer
FlixBusFlixBus · FlixBus
09:15PM35h20
Milano, Autostazione Lampugnano
07:35AMPorto, Terminal Intermodal de Campanhã
$1991One-way
1 transfer
FlixBusFlixBus · FlixBus · FlixBus
09:15PM35h20
Milano, San Donato - Settore B (Viale Giuseppe Impastato)
07:35AMPorto, Terminal Intermodal de Campanhã
$2031One-way
2 transfers

Travel Information

Compare bus and flight for Milan to Porto

Omio recommends booking the flight as it is the most popular option from Milan to Porto among Omio's users. If you are prioritising price take the flight with prices starting from €25. For those with little time consider booking a flight which can get you there in 3h 40m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 1.5 - 3.8kg. The ticket price range depends on the travel mode: a flight costs an average of €25, and a bus costs an average of €75.

Distance: 940 miles (1514 km)

Compare bus with

Bus
Most popular
Flight

€174

Average price

€142

Average price

Cheapest

31h 11m

Average total duration

30h 41m

Onboard

+

30m

Additional time*

6h 40m

Average total duration

Fastest

3h 40m

Onboard

+

3h 0m

Additional time*

1.5 - 3.8kg

CO2 emissions

Lowest

4.5 - 9.1kg

CO2 emissions

FlixBus

Most popular bus company

Ryanair

Most popular airline

Direct Options

Direct Options

Additional time: Average total travel duration to departure point, security checks and transfers.

Milan to Porto Bus Timetables

OperatorDeparture TimeArrival TimeDurationDeparture daysCheapest price
Operator
FlixBus
Departure Time
05:45AM
Arrival Time
02:25PM
Duration
33h40
Departure days
Tue
Cheapest price
$165
Operator
Itabus
Departure Time
06:20AM
Arrival Time
07:25PM
Duration
38h05
Departure days
Mon, Wed, Fri, Sun
Cheapest price
$97
Operator
FlixBus
Departure Time
07:25AM
Arrival Time
02:40PM
Duration
32h15
Departure days
Tue, Thu, Sat
Cheapest price
$151
Operator
FlixBus
Departure Time
09:05AM
Arrival Time
08:10PM
Duration
36h05
Departure days
Wed, Fri, Sun
Cheapest price
$178
Operator
BlaBlaCar Bus
Departure Time
10:00AM
Arrival Time
07:25PM
Duration
34h25
Departure days
Fri, Sun
Cheapest price
$148
Operator
BlaBlaCar Bus
Departure Time
10:20AM
Arrival Time
07:25PM
Duration
34h05
Departure days
Fri, Sun
Cheapest price
$160
Operator
FlixBus
Departure Time
11:25AM
Arrival Time
10:45PM
Duration
36h20
Departure days
Everyday
Cheapest price
$171
Operator
BlaBlaCar Bus
Departure Time
12:00PM
Arrival Time
07:25PM
Duration
32h25
Departure days
Fri, Sun
Cheapest price
$148
Operator
FlixBus
Departure Time
03:25PM
Arrival Time
02:25PM
Duration
48h00
Departure days
Wed
Cheapest price
$189
Operator
FlixBus
Departure Time
08:10PM
Arrival Time
02:25PM
Duration
43h15
Departure days
Wed
Cheapest price
$196
Operator
FlixBus
Departure Time
09:00PM
Arrival Time
07:35AM
Duration
35h35
Departure days
Mon, Thu, Fri, Sat, Sun
Cheapest price
$137
Operator
FlixBus
Departure Time
09:15PM
Arrival Time
07:35AM
Duration
35h20
Departure days
Mon, Thu, Fri, Sat, Sun
Cheapest price
$163
Operator
FlixBus
Departure Time
11:30PM
Arrival Time
02:25PM
Duration
39h55
Departure days
Mon, Wed, Fri
Cheapest price
$154
Operator
FlixBus
Departure Time
11:45PM
Arrival Time
02:40PM
Duration
39h55
Departure days
Mon, Wed, Fri
Cheapest price
$154

Live departures

Milan to Porto bus times

The table below shows live departures for Milan to Porto buses for today, Wednesday, November 26. You can also manually refresh the results below to see updated bus journeys.

Last updated at 8:41 AM
ProviderDepartsDurationArrivesTransfers
Tickets
meinfernbus_flixbusFlixBus · FlixBus10:25 AM Milano, Autostazione Lampugnano
36h20
10:45 PM Porto, Terminal Intermodal de Campanhã1 transfer
meinfernbus_flixbusFlixBus · FlixBus · FlixBus · FlixBus2:25 PM Milano, Milan Linate Airport
48h00
2:25 PM Porto, Terminal Intermodal de Campanhã3 transfers
meinfernbus_flixbusFlixBus · FlixBus · FlixBus7:10 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato)
43h15
2:25 PM Porto, Terminal Intermodal de Campanhã2 transfers
meinfernbus_flixbusFlixBus · FlixBus10:30 PM Milano, Autostazione Lampugnano
39h55
2:25 PM Porto, Terminal Intermodal de Campanhã1 transfer
meinfernbus_flixbusFlixBus · FlixBus · FlixBus10:45 PM Milano, Autostazione Lampugnano
39h55
2:40 PM Porto, Terminal Intermodal de Campanhã2 transfers
meinfernbus_flixbusFlixBus · FlixBus6:25 AM Milano, Autostazione Lampugnano
32h15
2:40 PM Porto, Terminal Intermodal de Campanhã1 transfer

This is the last bus of the day.

Find all the dates and times for this journey

Compare prices and tickets Milan to Porto by bus or flight

Compare 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.

Wed
Nov 26
Thu
Nov 27
Fri
Nov 28
Sat
Nov 29
Sun
Nov 30
Mon
Dec 01
Tue
Dec 02
Wed
Dec 03
Thu
Dec 04
Fri
Dec 05
Sat
Dec 06
Sun
Dec 07
Mon
Dec 08
Tue
Dec 09
Wed
Dec 10
Thu
Dec 11
Fri
Dec 12
Sat
Dec 13
Sun
Dec 14
Mon
Dec 15
Tue
Dec 16

Journey information

Overview: Bus from Milan to Porto

ItalyItaly
PortugalPortugal
Icon of bus

Buses from Milan to Porto run on average 7 times per day, taking around 30h 41m. Cheap bus tickets for this journey start at $92 (€75) but you can travel from only $30 (€25) by flight.

The earliest bus runs at 00:30, the last at 23:55. The fastest bus covers the 940 miles (1514 km) distance in 32h 15m.

Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Cheapest alternative travel mode
Flight from $30 (€25)
Distance
940 miles (1514 km)
Average bus duration
30h 41m
Cheapest ticket price
$92 (€75)
Buses per day
7
Fastest bus
32h 15m
First bus
00:30
Last bus
23:55
Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Cheapest alternative travel mode
Flight from $30 (€25)

Bus providers: FlixBus, BlaBlaCar Bus from Milan to PortoYou can travel by bus between Milan to Porto with FlixBus, BlaBlaCar Bus for as low as $30 (€25). When you search for schedules and tickets, Omio will show you the best journey

FlixBus

About
FlixBus is one of Europe’s leading low-cost bus companies, founded in Germany and now offering long-distance services across Europe and the United States. In addition to its extensive daytime network, FlixBus also operates overnight buses on select European routes. Standard amenities include free Wi-Fi, power outlets to charge devices, extra legroom, luggage space, and onboard toilets, with snacks and drinks available for purchase. FlixBus offers a single Standard ticket type for all routes, which includes one carry-on bag and one checked bag per passenger. Additional fees apply for extra luggage and for reserving specific seats, such as Extra Seats, Table Seats, or Panorama Seats. This combination of affordability, comfort, and wide coverage makes FlixBus a popular choice for budget-conscious travelers.
Luggage & cancellation policy
Average Duration
32h 15m
Cheapest Price
$137 (€111)
FlixBus frequency
8 a day
Luggage included
One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
Additional luggage
Additional luggage can be purchased for a fee.
Cancellation Policy
You can cancel your ticket up to 15 minutes before departure and receive a voucher for future travel. Refund requests for delays over 120 minutes are possible.
Amenities on board the bus
Wifi
Food sold onboard
Seat reservation
Toilets
USB plugs
Accessibility
Assistance; Priority boarding; Wheelchair-accessible buses.
Bikes
Bikes are allowed for a fee; must be booked.
Pets
Small pets in carriers allowed; guide dogs travel for free.

BlaBlaCar Bus

About
BlaBlaCar Bus (formerly known as Ouibus or iDBUS) is a long-distance coach company operating in 10 European countries and connecting over 300 destinations. A subsidiary of the French carpooling company BlaBlaCar, it offers comfortable travel with standard amenities such as air conditioning, toilets, USB and power outlets for charging devices, extra legroom, and adjustable seats. Free Wi-Fi is available on select routes. BlaBlaCar Bus offers only a Standard ticket type, which allows passengers to bring one carry-on bag and up to two checked bags per person.
Luggage & cancellation policy
Average Duration
31h 36m
Cheapest Price
$179 (€145)
BlaBlaCar Bus frequency
2 a day
Luggage included
One carry-on bag up to 7kg and one checked bag up to 20kg.
Additional luggage
Additional luggage can be purchased for a fee.
Cancellation Policy
You can cancel your ticket up to 30 minutes before departure for a refund in the form of a voucher.
Amenities on board the bus
Wifi
Food sold onboard
Seat reservation
Toilets
USB plugs
Accessibility
Assistance; Priority boarding; Accessible seating options.
Bikes
Bikes are allowed; additional fees may apply.

FAQs: Bus from Milan to Porto

Find answers to the most common questions about traveling from Milan 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.

FAQs
Cheap bus tickets from Milan to Porto can start from as little as $110 (€89) when you book in advance. The average bus ticket price for Milan to Porto is $193 (€156); however, prices vary depending on the time of day and class and they tend to be more expensive on the day.
On average the Milan to Porto bus travel time is 32 h   for the 939 mile (1514 km) long journey, but the duration can vary if you travel on weekends and holidays.
The first bus from Milan to Porto leaves at 4: 45AM. Plan your trip with the Journey Planner   from Omio.
The last bus from Milan to Porto leaves at 10: 30PM.
There are 9 buses a day from Milan to Porto which require at least one change with FlixBus or BlaBlaCar Bus. Schedules can vary on holidays or weekends with fewer buses.
For the trip from Milan to Porto you can take a bus with FlixBus or BlaBlaCar Bus. Be sure to check out all possible bus providers that offer services from Milan to Porto on Omio to compare what amenities they may have.
The cheapest month for a bus from Milan to Porto is February.
You have options as you can travel from Milan to Porto 2 different ways: bus or flight.
Yes, the following accessibility options are available when taking the bus from Milan to Porto:
  • FlixBus
    • Assistance
    • Priority boarding
    • Wheelchair-accessible buses.
  • BlaBlaCar Bus
    • Assistance
    • Priority boarding
    • Accessible seating options.
Yes, there are bathrooms on board the bus from Milan to Porto for bus providers FlixBus and BlaBlaCar Bus.
Some of the most interesting sights to explore in Porto are:
  • Ribeira District, a UNESCO World Heritage site known for its narrow streets and colorful houses along the Douro River
  • Livraria Lello, a historic bookstore with stunning architecture and a grand staircase, often cited as one of the most beautiful in the world
  • Clérigos Tower, an iconic baroque bell tower offering panoramic views of the city
  • Porto Cathedral, a Romanesque structure with a rich history and impressive Gothic cloisters
  • Palácio da Bolsa, a 19th-century neoclassical building with a stunning Arab Room.
The best things to do in Porto include:
  • Take a scenic cruise along the Douro River to enjoy the city's beautiful skyline and bridges
  • Explore the vibrant Bolhão Market, where you can taste local delicacies and experience the bustling atmosphere
  • Visit the Port wine cellars in Vila Nova de Gaia for a tasting tour and learn about the history of Port wine
  • Enjoy a traditional Fado music performance in one of Porto's cozy venues
  • Wander through the lush Crystal Palace Gardens for a relaxing afternoon with stunning views of the city.
Yes, bikes are allowed on board the bus with bus providers FlixBus and BlaBlaCar Bus.
Whether you can cancel your bus ticket from Milan to Porto depends on the bus companies:
  • FlixBus
    • You can cancel your ticket up to 15 minutes before departure and receive a voucher for future travel. Refund requests for delays over 120 minutes are possible.
  • BlaBlaCar Bus
    • You can cancel your ticket up to 30 minutes before departure for a refund in the form of a voucher.

To find the cheapest bus tickets for your trip from Milan to Porto, follow these tips:

  • Book in advance: Tickets are often cheaper when booked early.
  • Be flexible with dates and times: Traveling during off-peak hours or on weekdays can help you save money.
  • Use our search filters: Sort results by price to quickly identify the most affordable options.
  • Look for special deals or discounts: Check for promotions or discounts available on our website and app.
  • Start your search now and compare ticket prices to find the best deal!

    Yes, there is food available to purchase on board the bus from Milan to Porto.
    Yes, the following luggage options are included when booking a bus ticket from Milan to Porto:
    • FlixBus
      • One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
    • BlaBlaCar Bus
      • One carry-on bag up to 7kg and one checked bag up to 20kg.
    Yes, the following additional luggage options are available when booking a bus ticket from Milan to Porto:
    • FlixBus
      • Additional luggage can be purchased for a fee.
    • BlaBlaCar Bus
      • Additional luggage can be purchased for a fee.
    Yes, you can bring your pet on the bus from Milan to Porto. The following conditions apply:
    • FlixBus
      • Small pets in carriers allowed
      • Guide dogs travel for free.
    You can reserve your seat on the bus from Milan to Porto with the following bus companies: FlixBus and BlaBlaCar Bus
    Yes, there are USB plugs on board the bus from Milan to Porto with the following bus companies: FlixBus and BlaBlaCar Bus.
    Yes, there is Wifi on board the bus from Milan to Porto with the following bus companies: FlixBus and BlaBlaCar Bus.

    popular bus stations

    Popular bus stations from Milan to Porto

    Milan
    Porto
    The major bus station for departures in Milan is Milano, San Donato M3. Find all the information you need to know about services, amenities and connections at Milano, San Donato M3 for your trip from Milan to Porto.
    Amenities at bus station
    WifiWifi
    ParkingParking
    DiningDining
    ATMATM
    TaxisTaxis
    AccessibilityAccessibility
    WCWC
    Ticket OfficeTicket Office
    information
    ticketOfficeHours
    Ticket Office Hours
    • 06:00-23:00
    ticketOfficeHours
    Distance to city center
    1 km
    carConnection
    Car connection
    Via Marignano
    Wifi
    Wifi
    • Free Wi-Fi
    Dining
    Dining
    • Cafeteria Milano (in the station)
    • Trattoria San Donato (0.5 km)
    • Burger House (0.7 km).
    Taxis
    Taxis
    • Available outside the station.
    Accessibility
    Accessibility
    • Elevators, ramps
    WC
    WC
    • Available in the station.
    Public transit options for Milano, San Donato M3
    • Metro: M3 Bus: 121, 132, 133
    Amenities at bus station
    WifiWifi
    ParkingParking
    ATMATM
    TaxisTaxis
    AccessibilityAccessibility
    WCWC
    Ticket OfficeTicket Office
    information
    ticketOfficeHours
    Ticket Office Hours
    • 06:00-23:00
    ticketOfficeHours
    Distance to city center
    1 km
    carConnection
    Car connection
    Via Aeroporto
    Wifi
    Wifi
    • Free Wi-Fi
    Taxis
    Taxis
    • Available outside the station, near the arrivals area.
    Accessibility
    Accessibility
    • Elevators, ramps
    WC
    WC
    • Available in the station.
    Public transit options for Orio al Serio, Aeroporto di Bergamo-Orio al Serio (Stazione degli autobus)
    • Bus: 1, 1A
    Milano, Autostazione LampugnanoWifiParkingDiningATMTaxisAccessibilityWCTicket Office
    Amenities at bus station
    WifiWifi
    ParkingParking
    DiningDining
    ATMATM
    TaxisTaxis
    AccessibilityAccessibility
    WCWC
    Ticket OfficeTicket Office
    information
    ticketOfficeHours
    Ticket Office Hours
    • 06:00-23:00
    ticketOfficeHours
    Distance to city center
    5 km
    carConnection
    Car connection
    Via Giulio Natta
    Wifi
    Wifi
    • Free Wi-Fi
    Dining
    Dining
    • Cafeteria Lampugnano (in the station)
    • Trattoria Milano (0.5 km)
    • Pizza Express (0.7 km).
    Taxis
    Taxis
    • Available outside the station.
    Accessibility
    Accessibility
    • Elevators, ramps
    WC
    WC
    • Available in the station.
    Public transit options for Milano, Autostazione Lampugnano
    • Metro: M1 Bus: 68, 78, 80
    Milano, San Donato - Settore B (Viale Giuseppe Impastato)WifiParkingDiningATMTaxisAccessibilityWCTicket Office
    Amenities at bus station
    WifiWifi
    ParkingParking
    DiningDining
    ATMATM
    TaxisTaxis
    AccessibilityAccessibility
    WCWC
    Ticket OfficeTicket Office
    information
    ticketOfficeHours
    Ticket Office Hours
    • 06:00-22:00
    ticketOfficeHours
    Distance to city center
    6 km
    carConnection
    Car connection
    Viale Giuseppe Impastato
    Wifi
    Wifi
    • Free Wi-Fi
    Dining
    Dining
    • Cafeteria Italiana (in the station)
    • Fast Food Express (in the station)
    • Trattoria Milano (0.5 km).
    Taxis
    Taxis
    • Available outside the station.
    Accessibility
    Accessibility
    • Elevators, ramps
    WC
    WC
    • Available in the station.
    Public transit options for Milano, San Donato - Settore B (Viale Giuseppe Impastato)
    • Bus: 121, 132 Metro: M3
    Milano, Aeroporto di Milano Linate
    information

    The Omio App Makes Travel Planning Easy

    We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

    ios-badge
    android-badge
    Hand With Phone