What is the best way to travel from Porto to Milan?
Looking for a trip? Compare all the available Flights and Buses for the journey to Milan from Porto. Check between different modes of transportation, look for the cheapest tickets, fastest rides and most popular stations, and see all 3 available companies to find your perfect trip!
What is the cheapest way to reach Milan from Porto?
You can get to Milan with just $52 by taking a Flight from Vueling Airlines, but you can find many more cheap offers: we have selected the best ones for next few days here for you.
-
Vueling Airlines14h 10m010:00 PMPorto AirportPorto Airport1:10 PMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from Vueling Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 10:00:00 PM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/27/2026 1:10:00 PM. 50 Economy ticket for $52 per person are available. Travel duration is 14h 10m
-
Skyscanner2h 30m02:30 PMPorto AirportPorto Airport6:00 PMBergamo AirportBergamo Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 2:30:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/26/2026 6:00:00 PM. 50 Economy ticket for $62 per person are available. Travel duration is 2h 30m
-
Ryanair12h 45m06:45 AMPorto AirportPorto Airport8:30 PMBergamo AirportBergamo Airport0EconomyA Flight from Ryanair goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 6:45:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/26/2026 8:30:00 PM. 50 Economy ticket for $68 per person are available. Travel duration is 12h 45m
-
EasyJet Airline2h 40m01:40 PMPorto AirportPorto Airport5:20 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 1:40:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/26/2026 5:20:00 PM. 50 Economy ticket for $78 per person are available. Travel duration is 2h 40m
-
Air Nostrum25h 20m08:40 PMPorto AirportPorto Airport11:00 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Air Nostrum goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 8:40:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/27/2026 11:00:00 PM. 50 Economy ticket for $99 per person are available. Travel duration is 25h 20m
-
EasyJet Airline6h 5m06:20 AMPorto AirportPorto Airport1:25 PMBergamo AirportBergamo Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 6:20:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/26/2026 1:25:00 PM. 50 Economy ticket for $103 per person are available. Travel duration is 6h 5m
-
Rede Expressos34h 10m012:00 PMPorto AirportPorto Airport11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/27/2026 11:10:00 PM. 50 Economy ticket for $142 per person are available. Travel duration is 34h 10m
-
Rede Expressos33h 25m012:45 PMPortoCampanhã11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Campanhã, Porto (Portugal) at 6/26/2026 12:45:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/27/2026 11:10:00 PM. 50 Economy ticket for $142 per person are available. Travel duration is 33h 25m
-
ALSA35h 10m012:00 PMPorto AirportPorto Airport12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 12:10:00 AM. 50 Economy ticket for $142 per person are available. Travel duration is 35h 10m
-
ALSA34h 40m012:30 PMPortoPolo Universitário12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Polo Universitário, Porto (Portugal) at 6/26/2026 12:30:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 12:10:00 AM. 50 Economy ticket for $142 per person are available. Travel duration is 34h 40m
-
FlixBus33h 10m09:00 PMPortoCampanhã7:10 AMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/26/2026 9:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 7:10:00 AM. 50 Economy ticket for $170 per person are available. Travel duration is 33h 10m
Cheapest Flights Friday
Cheapest Buses Friday
-
Smartwings11h 0m09:10 PMPorto AirportPorto Airport9:10 AMBergamo AirportBergamo Airport0EconomyA Flight from Smartwings goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 9:10:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/28/2026 9:10:00 AM. 50 Economy ticket for $68 per person are available. Travel duration is 11h 0m
-
Ryanair7h 10m07:45 AMPorto AirportPorto Airport3:55 PMBergamo AirportBergamo Airport0EconomyA Flight from Ryanair goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 7:45:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 3:55:00 PM. 50 Economy ticket for $73 per person are available. Travel duration is 7h 10m
-
Skyscanner2h 30m011:15 AMPorto AirportPorto Airport2:45 PMBergamo AirportBergamo Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 11:15:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 2:45:00 PM. 50 Economy ticket for $76 per person are available. Travel duration is 2h 30m
-
Vueling Airlines15h 20m04:50 PMPorto AirportPorto Airport9:10 AMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from Vueling Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 4:50:00 PM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/28/2026 9:10:00 AM. 50 Economy ticket for $77 per person are available. Travel duration is 15h 20m
-
EasyJet Airline6h 25m012:20 PMPorto AirportPorto Airport7:45 PMBergamo AirportBergamo Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 12:20:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 7:45:00 PM. 50 Economy ticket for $94 per person are available. Travel duration is 6h 25m
-
Vueling Airlines6h 20m01:50 PMPorto AirportPorto Airport9:10 PMBergamo AirportBergamo Airport0EconomyA Flight from Vueling Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 1:50:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 9:10:00 PM. 50 Economy ticket for $105 per person are available. Travel duration is 6h 20m
-
Rede Expressos34h 10m012:00 PMPorto AirportPorto Airport11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 11:10:00 PM. 50 Economy ticket for $127 per person are available. Travel duration is 34h 10m
-
Rede Expressos33h 25m012:45 PMPortoCampanhã11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Campanhã, Porto (Portugal) at 6/27/2026 12:45:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 11:10:00 PM. 50 Economy ticket for $127 per person are available. Travel duration is 33h 25m
-
ALSA35h 10m012:00 PMPorto AirportPorto Airport12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 12:10:00 AM. 50 Economy ticket for $127 per person are available. Travel duration is 35h 10m
-
ALSA34h 40m012:30 PMPortoPolo Universitário12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Polo Universitário, Porto (Portugal) at 6/27/2026 12:30:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 12:10:00 AM. 50 Economy ticket for $127 per person are available. Travel duration is 34h 40m
-
FlixBus32h 35m09:30 AMPortoCampanhã7:05 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/27/2026 9:30:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 7:05:00 PM. 50 Economy ticket for $139 per person are available. Travel duration is 32h 35m
Cheapest Flights Saturday
Cheapest Buses Saturday
-
Ryanair18h 35m04:55 PMPorto AirportPorto Airport12:30 PMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from Ryanair goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 4:55:00 PM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/29/2026 12:30:00 PM. 50 Economy ticket for $65 per person are available. Travel duration is 18h 35m
-
Skyscanner2h 25m01:35 PMPorto AirportPorto Airport5:00 PMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 1:35:00 PM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/28/2026 5:00:00 PM. 50 Economy ticket for $99 per person are available. Travel duration is 2h 25m
-
TAP Portugal17h 50m06:00 AMPorto AirportPorto Airport12:50 AMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from TAP Portugal goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 6:00:00 AM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/29/2026 12:50:00 AM. 50 Economy ticket for $117 per person are available. Travel duration is 17h 50m
-
EasyJet Airline2h 35m01:55 PMPorto AirportPorto Airport5:30 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 1:55:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/28/2026 5:30:00 PM. 50 Economy ticket for $119 per person are available. Travel duration is 2h 35m
-
Volotea24h 25m012:10 PMPorto AirportPorto Airport1:35 PMBergamo AirportBergamo Airport0EconomyA Flight from Volotea goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 12:10:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/29/2026 1:35:00 PM. 50 Economy ticket for $127 per person are available. Travel duration is 24h 25m
-
AirBaltic13h 55m05:35 PMPorto AirportPorto Airport8:30 AMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from AirBaltic goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 5:35:00 PM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/29/2026 8:30:00 AM. 50 Economy ticket for $154 per person are available. Travel duration is 13h 55m
-
FlixBus38h 40m09:40 PMPorto AirportPorto Airport1:20 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 9:40:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/30/2026 1:20:00 PM. 50 Economy ticket for $138 per person are available. Travel duration is 38h 40m
-
FlixBus36h 40m04:30 AMPorto AirportPorto Airport6:10 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 4:30:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 6:10:00 PM. 50 Economy ticket for $164 per person are available. Travel duration is 36h 40m
-
FlixBus36h 10m05:00 AMPortoCampanhã6:10 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/28/2026 5:00:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 6:10:00 PM. 50 Economy ticket for $165 per person are available. Travel duration is 36h 10m
-
FlixBus41h 30m04:30 AMPorto AirportPorto Airport11:00 PMMilanSan Donato Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 4:30:00 AM to San Donato Bus Station, Milan (Italy) arriving at 6/29/2026 11:00:00 PM. 50 Economy ticket for $170 per person are available. Travel duration is 41h 30m
-
FlixBus42h 15m010:10 AMPorto AirportPorto Airport5:25 AMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 10:10:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/30/2026 5:25:00 AM. 50 Economy ticket for $170 per person are available. Travel duration is 42h 15m
Cheapest Flights Sunday
Cheapest Buses Sunday
What are the fastest trips from Porto to Milan?
You can get to Milan from Porto in just 2h 25m with a Flight from Skyscanner. This is not the only option, and you can click on any of the offers below to compare it with the other modes of transportations.
-
Skyscanner2h 30m02:30 PMPorto AirportPorto Airport6:00 PMBergamo AirportBergamo Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 2:30:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/26/2026 6:00:00 PM. 50 Economy ticket for $62 per person are available. Travel duration is 2h 30m
-
EasyJet Airline2h 40m01:40 PMPorto AirportPorto Airport5:20 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 1:40:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/26/2026 5:20:00 PM. 50 Economy ticket for $78 per person are available. Travel duration is 2h 40m
-
TAP Portugal4h 55m05:05 AMPorto AirportPorto Airport11:00 AMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from TAP Portugal goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 5:05:00 AM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/26/2026 11:00:00 AM. 50 Economy ticket for $133 per person are available. Travel duration is 4h 55m
-
Ryanair4h 55m06:45 AMPorto AirportPorto Airport12:40 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Ryanair goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 6:45:00 AM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/26/2026 12:40:00 PM. 50 Economy ticket for $173 per person are available. Travel duration is 4h 55m
-
Vueling Airlines5h 10m08:35 AMPorto AirportPorto Airport2:45 PMBergamo AirportBergamo Airport0EconomyA Flight from Vueling Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 8:35:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/26/2026 2:45:00 PM. 50 Economy ticket for $190 per person are available. Travel duration is 5h 10m
-
Volotea5h 15m03:00 PMPorto AirportPorto Airport9:15 PMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from Volotea goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 3:00:00 PM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/26/2026 9:15:00 PM. 50 Economy ticket for $160 per person are available. Travel duration is 5h 15m
-
FlixBus33h 10m09:00 PMPortoCampanhã7:10 AMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/26/2026 9:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 7:10:00 AM. 50 Economy ticket for $170 per person are available. Travel duration is 33h 10m
-
Rede Expressos33h 25m012:45 PMPortoCampanhã11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Campanhã, Porto (Portugal) at 6/26/2026 12:45:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/27/2026 11:10:00 PM. 50 Economy ticket for $142 per person are available. Travel duration is 33h 25m
-
Rede Expressos34h 10m012:00 PMPorto AirportPorto Airport11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/27/2026 11:10:00 PM. 50 Economy ticket for $142 per person are available. Travel duration is 34h 10m
-
ALSA34h 40m012:30 PMPortoPolo Universitário12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Polo Universitário, Porto (Portugal) at 6/26/2026 12:30:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 12:10:00 AM. 50 Economy ticket for $142 per person are available. Travel duration is 34h 40m
-
ALSA35h 10m012:00 PMPorto AirportPorto Airport12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Porto Airport, Porto Airport (Portugal) at 6/26/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 12:10:00 AM. 50 Economy ticket for $142 per person are available. Travel duration is 35h 10m
Fastest Flights Friday
Fastest Buses Friday
-
Skyscanner2h 30m011:15 AMPorto AirportPorto Airport2:45 PMBergamo AirportBergamo Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 11:15:00 AM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 2:45:00 PM. 50 Economy ticket for $76 per person are available. Travel duration is 2h 30m
-
TAP Portugal4h 55m05:05 AMPorto AirportPorto Airport11:00 AMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from TAP Portugal goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 5:05:00 AM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/27/2026 11:00:00 AM. 50 Economy ticket for $133 per person are available. Travel duration is 4h 55m
-
Transavia France5h 40m06:00 AMPorto AirportPorto Airport12:40 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Transavia France goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 6:00:00 AM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/27/2026 12:40:00 PM. 50 Economy ticket for $224 per person are available. Travel duration is 5h 40m
-
Lufthansa5h 40m06:20 AMPorto AirportPorto Airport1:00 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Lufthansa goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 6:20:00 AM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/27/2026 1:00:00 PM. 50 Economy ticket for $225 per person are available. Travel duration is 5h 40m
-
Swiss International Air Lines5h 50m03:00 AMPorto AirportPorto Airport9:50 AMMilan Malpensa AirportMilan Malpensa Airport - T10EconomyA Flight from Swiss International Air Lines goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 3:00:00 AM to Milan Malpensa Airport - T1, Milan Malpensa Airport (Italy) arriving at 6/27/2026 9:50:00 AM. 50 Economy ticket for $181 per person are available. Travel duration is 5h 50m
-
Vueling Airlines6h 20m01:50 PMPorto AirportPorto Airport9:10 PMBergamo AirportBergamo Airport0EconomyA Flight from Vueling Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 1:50:00 PM to Bergamo Airport, Bergamo Airport (Italy) arriving at 6/27/2026 9:10:00 PM. 50 Economy ticket for $105 per person are available. Travel duration is 6h 20m
-
FlixBus32h 35m09:30 AMPortoCampanhã7:05 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/27/2026 9:30:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 7:05:00 PM. 50 Economy ticket for $139 per person are available. Travel duration is 32h 35m
-
Rede Expressos33h 25m012:45 PMPortoCampanhã11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Campanhã, Porto (Portugal) at 6/27/2026 12:45:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 11:10:00 PM. 50 Economy ticket for $127 per person are available. Travel duration is 33h 25m
-
Rede Expressos34h 10m012:00 PMPorto AirportPorto Airport11:10 PMMilanLampugnano Bus Station0EconomyA Bus from Rede Expressos goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/28/2026 11:10:00 PM. 50 Economy ticket for $127 per person are available. Travel duration is 34h 10m
-
ALSA34h 40m012:30 PMPortoPolo Universitário12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Polo Universitário, Porto (Portugal) at 6/27/2026 12:30:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 12:10:00 AM. 50 Economy ticket for $127 per person are available. Travel duration is 34h 40m
-
ALSA35h 10m012:00 PMPorto AirportPorto Airport12:10 AMMilanLampugnano Bus Station0EconomyA Bus from ALSA goes from Porto Airport, Porto Airport (Portugal) at 6/27/2026 12:00:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 12:10:00 AM. 50 Economy ticket for $127 per person are available. Travel duration is 35h 10m
Fastest Flights Saturday
Fastest Buses Saturday
-
Skyscanner2h 25m01:35 PMPorto AirportPorto Airport5:00 PMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from Skyscanner goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 1:35:00 PM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/28/2026 5:00:00 PM. 50 Economy ticket for $99 per person are available. Travel duration is 2h 25m
-
EasyJet Airline2h 35m01:55 PMPorto AirportPorto Airport5:30 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from EasyJet Airline goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 1:55:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/28/2026 5:30:00 PM. 50 Economy ticket for $119 per person are available. Travel duration is 2h 35m
-
Lufthansa5h 0m06:00 AMPorto AirportPorto Airport12:00 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Lufthansa goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 6:00:00 AM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/28/2026 12:00:00 PM. 50 Economy ticket for $263 per person are available. Travel duration is 5h 0m
-
Air Europa11h 0m07:35 AMPorto AirportPorto Airport7:35 PMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Air Europa goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 7:35:00 AM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/28/2026 7:35:00 PM. 50 Economy ticket for $204 per person are available. Travel duration is 11h 0m
-
AirBaltic13h 55m05:35 PMPorto AirportPorto Airport8:30 AMMilan Malpensa AirportMilan Malpensa Airport0EconomyA Flight from AirBaltic goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 5:35:00 PM to Milan Malpensa Airport, Milan Malpensa Airport (Italy) arriving at 6/29/2026 8:30:00 AM. 50 Economy ticket for $154 per person are available. Travel duration is 13h 55m
-
Austrian Airlines14h 0m06:35 PMPorto AirportPorto Airport9:35 AMMilan Linate AirportMilan Linate Airport0EconomyA Flight from Austrian Airlines goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 6:35:00 PM to Milan Linate Airport, Milan Linate Airport (Italy) arriving at 6/29/2026 9:35:00 AM. 50 Economy ticket for $228 per person are available. Travel duration is 14h 0m
-
FlixBus36h 10m05:00 AMPortoCampanhã6:10 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Campanhã, Porto (Portugal) at 6/28/2026 5:00:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 6:10:00 PM. 50 Economy ticket for $165 per person are available. Travel duration is 36h 10m
-
FlixBus36h 40m04:30 AMPorto AirportPorto Airport6:10 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 4:30:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/29/2026 6:10:00 PM. 50 Economy ticket for $164 per person are available. Travel duration is 36h 40m
-
FlixBus38h 40m09:40 PMPorto AirportPorto Airport1:20 PMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 9:40:00 PM to Lampugnano Bus Station, Milan (Italy) arriving at 6/30/2026 1:20:00 PM. 50 Economy ticket for $138 per person are available. Travel duration is 38h 40m
-
FlixBus41h 30m04:30 AMPorto AirportPorto Airport11:00 PMMilanSan Donato Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 4:30:00 AM to San Donato Bus Station, Milan (Italy) arriving at 6/29/2026 11:00:00 PM. 50 Economy ticket for $170 per person are available. Travel duration is 41h 30m
-
FlixBus42h 15m010:10 AMPorto AirportPorto Airport5:25 AMMilanLampugnano Bus Station0EconomyA Bus from FlixBus goes from Porto Airport, Porto Airport (Portugal) at 6/28/2026 10:10:00 AM to Lampugnano Bus Station, Milan (Italy) arriving at 6/30/2026 5:25:00 AM. 50 Economy ticket for $170 per person are available. Travel duration is 42h 15m
Fastest Flights Sunday
Fastest Buses Sunday
Here you will find all operators and timetables for a
Bus from Porto to Milan
What are the most popular stations in Porto and Milan?
In Porto, you will usually depart from Campanhã, São Bento or Polo Universitário, while in Milan you will be arriving at Central Station - Piazza Luigi di Savoia, Lampugnano Bus Station or Cadorna Train Station, but there are many more stops to explore in both locations.
How do I decide? Some tips and tricks from our experience
Are you having trouble deciding on how to get to Milan from Porto? With 19 connections between 3 Flight and Bus operators, it can be difficult to find the one ride that will make you happy. But we have some tips that can help you make the best informed decision. First of all, the best trip is always the one that meets all your needs, so make a list of all the things that you want from this journey and look for something that will satisfy all of them. Here we will go through some of the factors mostly commonly taken into consideration.
Look for the lowest price
Ticket price is usually the main concern: even if you can afford to pay more, why do it if there are cheaper options? Saving on the trip means that you can spend more on the vacation itself! Between Porto and Milan, you can pay as low as $52 with a Flight from Vueling Airlines.Travel duration
Time is also an important factor. An earlier departure may allow you to see a beautiful sunset or relax before an important event. And remember, time is money, so paying more for a shorter trip may be well worth it. For longer distances, flights are without doubt the best options, but be mindful of airport times and possible delays: a high-speed train may end up cheaper and faster! Here the quicker option is definitely the Flight from Skyscanner: you will get to Milan in just 2h 25m.Comfort makes all the difference
You should always take into account what your personal travelling preferences are. Is one hand luggage enough, or are you trasporting more? Would you like to have a snack during the journey? Can you relax in a busy compartment, or do you need space for yourself? Even among the same mode of transportation, different companies will offer you varying levels of comfort and amenities. The main operators connecting Porto and Milan are FlixBus, EasyJet Airline and Rede Expressos, but be sure to check what they have to offer!Save money with deals, and always compare
One last tip? Even if you live in Porto and Milan is your only destination, it may be wise to check the offers from and to nearby cities or, if you are flyng, nearby airports. Check the trips from Vila Nova De Gaia or to Corsico, and look at flights from Porto Airport, and landing at Bergamo Airport. Comparing different routes may allow you to find deals or promotions you were not aware of. Consider also signing up to CheckMyBus to see even more exclusive promotions!Which companies offer a trip from Porto to Milan?
The most popular companies between Porto and Milan, are FlixBus, EasyJet Airline and Rede Expressos. Be sure to check their seat class offers and the amenities that they provide.
Bus companies: FlixBus, Rede Expressos and ALSA
Airlines: EasyJet Airline, Ryanair, Vueling Airlines and 17 more.
All you need to know when you travel from Porto to Milan
Check all information on comfort and services on all modes of transports from Porto to Milan. See which seat classes are available, and what amenities are other advantages offered by the operators on your journey.
FAQs about the trip from Porto to Milan
How can I reach Milan from Porto?
Every day, there are on average 19 connections between Flight and Bus, with which you can get to Milan from Porto.
How far is Milan from Porto?
The distance between Porto and Milan is 941.6 miles.
What is the most ecofriendly mode of transport between Porto and Milan?
Trains and buses are by far the greenest options, with trains surpassing buses on longer routes. Planes will always be the worst polluters, especially in shorter flights, were the emissions from the takeoff and landing are less offset by the distance.
On this particular route, a bus will emit, per person, a total of 41 kgs of CO2, a train 53 kgs, a car 258 kgs, and a flight 373 kgs.
What is the cheapest mode of transport from Porto to Milan?
You can get to Milan with just $52 by taking a Flight from Vueling Airlines.
What is the fastest way to get from Porto to Milan?
While a plane is travelling fastest boarding and transfer to airport consumes a lot of time. Usually, high speed trains are better than flights if pure train travel time is below 4 hours. For this particular route, you can get to Milan in just 2h 25m with a Flight from Skyscanner.
More routes to Porto and to Milan
Looking for more options? Here you can see the most popular routes to Porto and to Milan. Simply click on a connection, and you’ll find all the details about the route!
- Trips to Porto
- A Coruña to Porto
- Bilbao to Porto
- Bordeaux to Porto
- Braganza to Porto
- Faro to Porto
- Fátima to Porto
- León to Porto
- Lisbon Airport to Porto
- Lisbon to Porto
- Madrid to Porto
- Mirandela to Porto
- Monção to Porto
- Oviedo to Porto
- Paris to Porto
- Pontevedra to Porto
- Portalegre to Porto
- Portimão to Porto
- Salamanca (ES) to Porto
- Santander to Porto
- Santiago de Compostela to Porto
- Valença do Minho to Porto
- Vigo to Porto
- Vila Nova de Famalicão to Porto
- Vila Real to Porto
- Trips to Milan
- Bari to Milan
- Basel to Milan
- Bergamo Airport to Milan
- Bergamo to Milan
- Bologna to Milan
- Brescia to Milan
- Catania to Milan
- Cesena to Milan
- Chatillon to Milan
- Courmayeur to Milan
- Florence to Milan
- Foggia to Milan
- London to Milan
- Lugano to Milan
- Malaga to Milan
- Marseille to Milan
- Milan Linate Airport to Milan
- Palermo to Milan
- Pont-Saint-Martin to Milan
- Rimini to Milan
- Strasbourg to Milan
- Venice to Milan
- Verrès to Milan
