There are 12 ways to get from Milan to Bitola by train, plane, busferry, bus, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Milano Malpensa Airport, fly to Thessaloniki Airport Makedonia, train
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Thessaloniki Airport Makedonia (SKG)plane MXP - SKG
- Take the train from Thessaloniki to Mesonisiontrain
10h 19m$79–251Train to Milano Malpensa Airport, fly to Tirana International Airport Nënë Tereza, bus
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 bus from Elbasan to Ohridbus
- Take the bus from Ohrid to Bitolabus
11h 11m$24–281Train, bus and ferry, bus
- Take the train from Milano Centrale to Bologna Centraletrain Fr
- Take the train from Bologna Centrale to Bari Centraletrain Fr
- Take the busferry from Bari Porto to Durrësbusferry
- Take the bus from Durrës to Ohridbus
- Take the bus from Ohrid to Bitolabus
18h 40mDrive 1,560.8 km
- Drive from Milan to Bitolacar 1,560.8 km
15h 35m$283–408Bus to Il Caravaggio International Airport, fly to Thessaloniki Airport Makedonia, train
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Thessaloniki Airport Makedonia (SKG)plane BGY - SKG
- Take the train from Thessaloniki to Mesonisiontrain
10h 26m$95–420Bus to Il Caravaggio International Airport, fly to Tirana International Airport Nënë Tereza, bus
- 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 bus from Elbasan to Ohridbus
- Take the bus from Ohrid to Bitolabus
11h 8m$33–350Fly Milan Linate Airport to Brindisi Airport, bus and ferry, bus
- Fly from Milan Linate Airport (LIN) to Brindisi Airport (BDS)plane LIN - BDS
- Take the busferry from Brindisi - Piazza Capitanerie di Porto to Vlorëbusferry
- Take the bus from Vlorë to Ohridbus
- Take the bus from Ohrid to Bitolabus
14h 40mTrain to Verona Villafranca Airport, fly to Tirana International Airport Nënë Tereza, bus
- 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 bus from Elbasan to Ohridbus
- Take the bus from Ohrid to Bitolabus
11h 50m$49–331Train to Genoa Cristoforo Colombo Airport, fly to Tirana International Airport Nënë Tereza, bus
- Take the train from Milano Centrale to Genova P.Za Principetrain
- Fly from Genoa Cristoforo Colombo Airport (GOA) to Tirana International Airport Nënë Tereza (TIA)plane GOA - TIA
- Take the bus from Elbasan to Ohridbus
- Take the bus from Ohrid to Bitolabus
12h 39m$57–296Train, bus
- Take the train from Milano Centrale to Firenze S.M.N.train Fr
- Take the bus from Stazione Santa Maria Novella to Skopje, Transporten Centarbus
- Take the train from Skopje to Bitolatrain 645 / ...
24h 34m$171–242Bus
- Take the bus from Milano, Autostazione Lampugnano to Veronabus 423 / ...
- Take the bus from Verona Porta Nuova to Skopje, Transporten Centarbus
- Take the bus from Skopje, Transporten Centar to Bitolabus
27h 18m$85–123Bus and ferry, bus
- Take the busferry from Milano Centrale to Tiranabusferry
- Take the bus from Tirana to Strugabus
- Take the bus from Struga to Bitolabus
33h 22m$146–160
Milano Malpensa Airport (MXP) to Thessaloniki Airport Makedonia (SKG) flights
Comparing Your Travel Options
The cheapest way to get from Milan to Bitola is to train and fly and bus which costs $23 - $290 and takes 11h 11m.
The fastest way to get from Milan to Bitola is to train and fly which takes 10h 19m and costs $75 - $260.
No, there is no direct bus from Milan to Bitola. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Bitola via Verona Porta Nuova and Skopje, Transporten Centar. The journey, including transfers, takes approximately 27h 18m.
The distance between Milan and Bitola is 1576 km. The road distance is 1560.8 km.
The best way to get from Milan to Bitola without a car is to train and bus and ferry and bus which takes 18h 40m and costs .
It takes approximately 10h 19m to get from Milan to Bitola, including transfers.
Milan to Bitola bus services, operated by FlixBus, depart from Milano, Autostazione Lampugnano station.
Milan to Bitola bus services, operated by FlixBus, arrive at Verona station.
Yes, the driving distance between Milan to Bitola is 1561 km. It takes approximately 15h 35m to drive from Milan to Bitola.
There are 267+ hotels available in Bitola.
What companies run services between Milan, Italy and Bitola, North Macedonia?
You can take a bus from Milano, Autostazione Lampugnano to Bitola via Verona, Verona Porta Nuova, and Skopje, Transporten Centar in around 27h 18m.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia via Vienna
- Ave. Duration
- 5h 10m
- When
- Tuesday
- Estimated price
- $65–140
Flights from Il Caravaggio International Airport to Thessaloniki Airport Makedonia
- Ave. Duration
- 2h 5m
- When
- Monday, Tuesday, Wednesday, Thursday, and Saturday
- Estimated price
- $65–360
Flights from Il Caravaggio International Airport to Thessaloniki Airport Makedonia via Vienna
- Ave. Duration
- 4h 15m
- When
- Sunday
- Estimated price
- $65–360
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- $35–270
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza via Bari
- Ave. Duration
- 3h 40m
- When
- Wednesday, Friday, and Monday
- Estimated price
- $35–270
Flights from Il Caravaggio International Airport to Tirana International Airport Nënë Tereza via Naples
- Ave. Duration
- 4h 17m
- When
- Friday and Saturday
- Estimated price
- $35–270
Flights from Milano Malpensa Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 55m
- When
- Friday, Saturday, Sunday, Tuesday, Monday, and Wednesday
- Estimated price
- $40–250
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- $50–260
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza via Bari
- Ave. Duration
- 3h 35m
- When
- Wednesday to Friday
- Estimated price
- $55–260
Flights from Genoa Cristoforo Colombo Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- $30–140
- 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–300
Flights from Milano Malpensa Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- $7–180
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- $10–260
Flights from Genoa Cristoforo Colombo Airport to Tirana International Airport Nënë Tereza
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- $23–260
- Website
- ita-airways.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia via Belgrade
- Ave. Duration
- 4h 50m
- When
- Monday, Thursday, Friday, and Saturday
- Estimated price
- $85–240
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- $60–200
Flights from Milan Linate Airport to Brindisi Airport via Rome
- Ave. Duration
- 3h 50m
- When
- Every day
- Estimated price
- $60–200
Flights from Genoa Cristoforo Colombo Airport to Tirana International Airport Nënë Tereza via Rome
- Ave. Duration
- 3h 50m
- When
- Sunday
- Estimated price
- $90–310
- Website
- lufthansa.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia via Munich
- Ave. Duration
- 4h 58m
- When
- Every day
- Estimated price
- $50–320
Flights from Milan Linate Airport to Brindisi Airport via Rome
- Ave. Duration
- 4h
- When
- Monday to Friday
- Estimated price
- $60–200
Flights from Verona Villafranca Airport to Tirana International Airport Nënë Tereza via Munich
- Ave. Duration
- 3h 50m
- When
- Friday and Sunday
- Estimated price
- $110–410
Flights from Genoa Cristoforo Colombo Airport to Tirana International Airport Nënë Tereza via Munich
- Ave. Duration
- 4h 10m
- When
- Friday
- Estimated price
- $120–430
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia
- Ave. Duration
- 2h 10m
- When
- Tuesday and Saturday
- Estimated price
- $40–200
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 40m
- When
- Monday and Thursday
- Estimated price
- $40–130
- Website
- en.aegeanair.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia
- Ave. Duration
- 2h 5m
- When
- Tuesday and Saturday
- Estimated price
- $50–130
- Website
- airserbia.com
Flights from Milano Malpensa Airport to Thessaloniki Airport Makedonia via Belgrade
- Ave. Duration
- 4h 50m
- When
- Monday, Thursday, Friday, and Saturday
- Estimated price
- $85–240
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- $4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- $4–6
- Website
- Trenord
- Phone
- 14511
- Website
- Hellenic Train S.A.
Train from Thessaloniki to Mesonision
- Ave. Duration
- 2h 56m
- Frequency
- Twice daily
- Estimated price
- $15–22
- Website
- Hellenic Train S.A.
Train from Thessaloniki to Mesonision
- Ave. Duration
- 2h 56m
- Frequency
- Twice daily
- Estimated price
- $15–22
- Website
- Hellenic Train S.A.
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Milano Centrale to Bologna Centrale
- Ave. Duration
- 1h 4m
- Frequency
- Hourly
- Estimated price
- $30–55
- Website
- Trenitalia Frecce
Train from Bologna Centrale to Bari Centrale
- Ave. Duration
- 5h 45m
- Frequency
- Every 2 hours
- Estimated price
- $100–170
- Website
- Trenitalia Frecce
Train from Milano Centrale to Verona Porta Nuova
- Ave. Duration
- 1h 13m
- Frequency
- Hourly
- Estimated price
- $22–40
- Website
- Trenitalia Frecce
Train from Milano Centrale to Genova P.Za Principe
- Ave. Duration
- 1h 30m
- Frequency
- Twice daily
- Estimated price
- $21–40
- Website
- Trenitalia Frecce
Train from Milano Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 54m
- Frequency
- Every 2 hours
- Estimated price
- $45–80
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Milano Centrale to Bologna Centrale
- Ave. Duration
- 2h 33m
- Frequency
- Every 4 hours
- Estimated price
- $25–50
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Bari Centrale
- Ave. Duration
- 7h 5m
- Frequency
- Every 4 hours
- Estimated price
- $75–140
- Website
- Trenitalia Intercity
Train from Milano Centrale to Genova P.Za Principe
- Ave. Duration
- 1h 34m
- Frequency
- Hourly
- Estimated price
- $16–30
- Website
- Trenitalia Intercity
Train from Milano Centrale to Firenze S.M.N.
- Ave. Duration
- 3h 42m
- Frequency
- Once daily
- Estimated price
- $35–70
- Website
- Trenitalia Intercity
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Milano Centrale to Bologna Centrale
- Ave. Duration
- 1h 17m
- Frequency
- 4 times a day
- Estimated price
- $28–50
- Website
- Italo Treno
Train from Milano Centrale to Firenze S.M.N.
- Ave. Duration
- 2h 11m
- Frequency
- 4 times a day
- Estimated price
- $40–70
- Website
- Italo Treno
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Milano Centrale to Genova P.Za Principe
- Ave. Duration
- 1h 53m
- Frequency
- Every 4 hours
- Estimated price
- $18–26
- Website
- Trenitalia
- Phone
- +389 (2) 3 164 255
- [email protected]
- Website
- mzt.mk
Train from Skopje to Bitola
- Ave. Duration
- 3h 24m
- Frequency
- Twice daily
- Estimated price
- $11–40
- Schedules at
- mzt.mk
- 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
- +393293958604
- [email protected]
- Website
- 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 Vlorë
- Ave. Duration
- 4h 28m
- Frequency
- Once a week
- Schedules at
- pistoia-viaggi.it
- Phone
- +389 46 787 312
- [email protected]
- Website
- eurobus.mk
Bus from Durrës to Ohrid
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- $9–21
- Schedules at
- eurobus.mk
Bus from Elbasan to Ohrid
- Ave. Duration
- 54 min
- Frequency
- Once daily
- Estimated price
- $4–7
- Schedules at
- eurobus.mk
Bus from Elbasan to Ohrid
- Ave. Duration
- 54 min
- Frequency
- Once daily
- Estimated price
- $4–7
- Schedules at
- eurobus.mk
Bus from Vlorë to Ohrid
- Ave. Duration
- 3h
- Frequency
- Once daily
- Estimated price
- $14–21
- Schedules at
- eurobus.mk
Bus from Elbasan to Ohrid
- Ave. Duration
- 54 min
- Frequency
- Once daily
- Estimated price
- $4–7
- Schedules at
- eurobus.mk
Bus from Elbasan to Ohrid
- Ave. Duration
- 54 min
- Frequency
- Once daily
- Estimated price
- $4–7
- Schedules at
- eurobus.mk
- Phone
- 033/273-551
- [email protected]
- Website
- avtoatom.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- $6–7
- Schedules at
- avtoatom.mk
- Phone
- +389 72 230-200
- [email protected]
- Website
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- $6–10
- Schedules at
- ekstrabus.com.mk
- Phone
- +389 47 231 192
- [email protected]
- Website
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Ohrid to Bitola
- Ave. Duration
- 1h 47m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Skopje, Transporten Centar to Bitola
- Ave. Duration
- 3h 30m
- Frequency
- Every 4 hours
- Estimated price
- $18
- Schedules at
- transkop.mk
Bus from Struga to Bitola
- Ave. Duration
- 2h 7m
- Frequency
- Once daily
- Estimated price
- $18
- Schedules at
- transkop.mk
- [email protected]
- Website
- TERRAVISION
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–26
- Website
- TERRAVISION
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $5–26
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $12–16
- Schedules at
- orioshuttle.com
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- $12–16
- Schedules at
- orioshuttle.com
- Phone
- +389 70 212 106
- [email protected]
- Website
- senadtours.com
Bus from Vlorë to Ohrid
- Ave. Duration
- 3h
- Frequency
- Once daily
- Estimated price
- $24
- Schedules at
- senadtours.com
- Phone
- +389 75 209 209
- [email protected]
- Website
- Hak Bus
Bus from Stazione Santa Maria Novella to Skopje, Transporten Centar
- Ave. Duration
- 17h 16m
- Frequency
- Once a week
- Estimated price
- $123
- Website
- Hak Bus
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Milano, Autostazione Lampugnano to Verona
- Ave. Duration
- 2h 20m
- Frequency
- Every 4 hours
- Estimated price
- $16–25
- Website
- Flixbus
- Phone
- +389 42 217 370
- [email protected]
- Website
- durmotours.com.mk
Bus from Verona Porta Nuova to Skopje, Transporten Centar
- Ave. Duration
- 19h 24m
- Frequency
- Twice a week
- Estimated price
- $50–80
- Schedules at
- durmotours.com.mk
- Phone
- +355696383030
- Website
- firenzelines.com
Busferry from Milano Centrale to Tirana
- Ave. Duration
- 24h 45m
- Frequency
- Once a week
- Estimated price
- $112
- Schedules at
- firenzelines.com
- Phone
- +355 69 234 8608
- [email protected]
- Website
- dritatravel.com
Bus from Tirana to Struga
- Ave. Duration
- 4h 30m
- Frequency
- Once daily
- Estimated price
- $16–30
- Schedules at
- dritatravel.com
Want to know more about travelling around North Macedonia
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
5 incredible day trips from Florence by train
Read the travel guide



























































