There are 12 ways to get from Milan to Berat by train, busferry, car, bus, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train, bus and ferry, drive
best- Take the train from Milano Centrale to Reggio Emilia Avtrain Fr
- Take the train from Reggio Emilia Av to Brindisitrain Fr
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Vlorëbusferry
- Drive from Vlorë to Beratcar
16h 13mTrain to Milano Malpensa Airport, fly to Tirana International Airport Nënë Tereza, train
cheapest- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Tirana International Airport Nënë Tereza (TIA)plane MXP - TIA
- Take the train from Durrës Plazh to Lushnjëtrain
10h 13m$29–226Bus and ferry, bus
- Take the busferry from Milano Centrale to Tiranabusferry
- Take the bus from Tirana to Beratbus
28h 43m$123Drive 1,374.3 km
- Drive from Milan to Beratcar 1,374.3 km
17h 41m$249–360Bus to Il Caravaggio International Airport, fly to Tirana International Airport Nënë Tereza, train
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Tirana International Airport Nënë Tereza (TIA)plane BGY - TIA
- Take the train from Durrës Plazh to Lushnjëtrain
10h 10m$36–259Train, bus and ferry
- Take the train from Milano Centrale to Brindisitrain Fr
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjëbusferry
17h 39mTrain, bus and ferry via Reggio Emilia
- Take the train from Milano Centrale to Reggio Emilia Avtrain Fr
- Take the train from Reggio Emilia Av to Bari Centraletrain Fr
- Take the busferry from Bari Porto to Durrësbusferry
- Take the train from Durrës Plazh to Lushnjëtrain
18h 3mBus
- Take the bus from Milano, Autostazione Lampugnano to Lushnjëbus
29h 5m$81Fly Milan Linate Airport to Brindisi Airport, bus and ferry
- Fly from Milan Linate Airport (LIN) to Brindisi Airport (BDS)plane LIN - BDS
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjëbusferry
14h 12mTrain to Verona Villafranca Airport, fly to Tirana International Airport Nënë Tereza, train
- Take the train from Milano Centrale to Verona Porta Nuovatrain
- Fly from Verona Villafranca Airport (VRN) to Tirana International Airport Nënë Tereza (TIA)plane VRN - TIA
- Take the train from Durrës Plazh to Lushnjëtrain
10h 51m$61–332Train to Milano Malpensa Airport, fly to Brindisi Airport, bus and ferry
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Brindisi Airport (BDS)plane MXP - BDS
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjëbusferry
14h 53mBus to Il Caravaggio International Airport, fly to Brindisi Airport, bus and ferry
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Brindisi Airport (BDS)plane BGY - BDS
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjëbusferry
14h 55m
Milan to Berat by bus
Questions & Answers
The cheapest way to get from Milan to Berat is to bus which costs $81 and takes 29h 5m.
The fastest way to get from Milan to Berat is to bus and fly and train which takes 10h 10m and costs $35 - $260.
No, there is no direct bus from Milan to Berat. However, there are services departing from Milano Centrale and arriving at Berat via Asllan Rusi and Tirana. The journey, including transfers, takes approximately 28h 43m.
The distance between Milan and Berat is 1181 km. The road distance is 1374.3 km.
The best way to get from Milan to Berat without a car is to bus and ferry and bus which takes 28h 43m and costs $123.
It takes approximately 16h 13m to get from Milan to Berat, including transfers.
Milan to Berat bus services, operated by Firenze Lines, depart from Milano Centrale station.
Milan to Berat bus services, operated by Firenze Lines, arrive at Tirana station.
Yes, the driving distance between Milan to Berat is 1374 km. It takes approximately 17h 41m to drive from Milan to Berat.
There are 639+ hotels available in Berat.
What companies run services between Milan, Italy and Berat, Albania?
Arkleand bus operates a bus from Milano, Autostazione Lampugnano to Lushnjë twice a week. Tickets cost $81 and the journey takes 27h 5m.
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- $35–240
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza via Bari
- Ave. Duration
- 4h
- When
- Friday and Tuesday
- Estimated price
- $35–240
Flights from Milano Malpensa Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- $30–180
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- $24–170
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza via Lamezia Terme
- Ave. Duration
- 3h 30m
- When
- Monday, Wednesday, and Saturday
- Estimated price
- $24–170
Flights from Milano Malpensa Airport to Brindisi Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- $50–210
Flights from Il Caravaggio International Airport to Brindisi Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- $45–260
- Website
- easyjet.com
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 37m
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- $50–340
Flights from Milano Malpensa Airport to Brindisi Airport
- Ave. Duration
- 1h 49m
- When
- Every day
- Estimated price
- $45–260
- Website
- flyulendo.com
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- $15–180
Flights from Milano Malpensa Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- $15–170
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- $26–200
- Website
- ita-airways.com
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- $75–200
Flights from Milan Linate Airport to Brindisi Airport via Rome
- Ave. Duration
- 3h 31m
- When
- Every day
- Estimated price
- $75–200
- Website
- neosair.it
Flights from Milano Malpensa Airport to Brindisi Airport
- Ave. Duration
- 1h 55m
- When
- Sunday
- Estimated price
- $170–490
- Website
- swiss.com
Flights from Milano Malpensa Airport to Brindisi Airport via Zurich
- Ave. Duration
- 4h 15m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- $100–360
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- $25–50
- Schedules at
- trenitalia.com
Train from Reggio Emilia Av to Brindisi
- Ave. Duration
- 7h 4m
- Frequency
- Every 2 hours
- Estimated price
- $140–280
- Schedules at
- trenitalia.com
Train from Milano Centrale to Brindisi
- Ave. Duration
- 7h 52m
- Frequency
- Every 4 hours
- Estimated price
- $160–330
- Schedules at
- trenitalia.com
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- $25–50
- Schedules at
- trenitalia.com
Train from Reggio Emilia Av to Bari Centrale
- Ave. Duration
- 6h 7m
- Frequency
- Hourly
- Estimated price
- $120–240
- Schedules at
- trenitalia.com
Train from Milano Centrale to Verona Porta Nuova
- Ave. Duration
- 1h 13m
- Frequency
- Every 30 minutes
- Estimated price
- $25–50
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 1h 5m
- Frequency
- Once daily
- Estimated price
- $21–45
- Website
- https://www.italotreno.it/en
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 1h 5m
- Frequency
- Once daily
- Estimated price
- $21–45
- Website
- https://www.italotreno.it/en
- Phone
- +355 52 222037
- [email protected]
- Website
- hekurudha.al
Train from Durrës Plazh to Lushnjë
- Ave. Duration
- 55 min
- Frequency
- Twice a week
- Estimated price
- $1–2
- Schedules at
- hekurudha.al
Train from Durrës Plazh to Lushnjë
- Ave. Duration
- 55 min
- Frequency
- Twice a week
- Estimated price
- $1–2
- Schedules at
- hekurudha.al
Train from Durrës Plazh to Lushnjë
- Ave. Duration
- 55 min
- Frequency
- Twice a week
- Estimated price
- $1–2
- Schedules at
- hekurudha.al
Train from Durrës Plazh to Lushnjë
- Ave. Duration
- 55 min
- Frequency
- Twice a week
- Estimated price
- $1–2
- Schedules at
- hekurudha.al
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Brindisi
- Ave. Duration
- 11h 8m
- Frequency
- Every 4 hours
- Estimated price
- $120–250
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–7
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–7
- Website
- https://www.trenord.it/en/
- Phone
- +39 06 68475475
- [email protected]
- Website
- trenitalia.com
Train from Milano Centrale to Verona Porta Nuova
- Ave. Duration
- 1h 23m
- Frequency
- Once daily
- Estimated price
- $40–95
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- $65–95
- 2nd Class
- $40–60
- Phone
- +393293958604
- [email protected]
- Website
- pistoia-viaggi.it
Busferry from Brindisi - Piazza Capitanerie di Porto to Vlorë
- Ave. Duration
- 4h 28m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
Busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjë
- Ave. Duration
- 6h 23m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
Busferry from Bari Porto to Durrës
- Ave. Duration
- 6h
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
Busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjë
- Ave. Duration
- 6h 23m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
Busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjë
- Ave. Duration
- 6h 23m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
Busferry from Brindisi - Piazza Capitanerie di Porto to Lushnjë
- Ave. Duration
- 6h 23m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
- Phone
- +355696383030
- Website
- firenzelines.com
Busferry from Milano Centrale to Tirana
- Ave. Duration
- 24h 45m
- Frequency
- Once a week
- Estimated price
- $116
- Schedules at
- firenzelines.com
- Phone
- +383 38 616 161
- Website
- travel.gjirafa.com
Bus from Tirana to Berat
- Ave. Duration
- 2h 45m
- Frequency
- Every 4 hours
- Estimated price
- $7
- Schedules at
- travel.gjirafa.com
- [email protected]
- Website
- terravision.eu
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–29
- Website
- https://www.terravision.eu/
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–29
- Website
- https://www.terravision.eu/
- Phone
- +355697278670
- [email protected]
- Website
- facebook.com
Busferry from Bari Porto to Durrës
- Ave. Duration
- 4h 56m
- Frequency
- Twice a week
- Schedules at
- autobus.al
- Phone
- +355 692323966
- [email protected]
Bus from Milano, Autostazione Lampugnano to Lushnjë
- Ave. Duration
- 27h 5m
- Frequency
- Twice a week
- Estimated price
- $81
- Schedules at
- facebook.com
Want to know more about travelling around Albania
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Getting to Milan from the airport
Read the travel guide








































