• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 7 ways to get from Milan to Sofia by plane, bus, train, night train 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.

Recommended option

Fly from Milan Linate  •  5 h 9 min

  1. Fly from Milan Linate (LIN) to Sofia (SOF) LIN - SOF

$58 - $123

Cheapest option

Fly from Milan Bergamo  •  5 h 39 min

  1. Fly from Milan Bergamo (BGY) to Sofia (SOF) BGY - SOF

$18 - $92

5 alternative options

Fly from Milan Malpensa  •  5 h 26 min

  1. Fly from Milan Malpensa (MXP) to Sofia (SOF) MXP - SOF

$29 - $117

Bus  •  22 h

  1. Take the bus from Milan to Sofia

$170 - $220

Train, bus  •  23 h 2 min

  1. Take the train from Milano Rogoredo to Bologna C.Le Fr / ...
  2. Take the bus from Bologna to Sofia Serdika Florentia Bus

$81 - $122

Train, night train  •  41 h 38 min

  1. Take the train from Milano Centrale to Verona Porta Nuova Fr / ...
  2. Take the train from Verona Porta Nuova to Innsbruck Hbf Ec
  3. Take the train from Innsbruck Hbf to Wien Hbf Rj
  4. Take the night train from Wien Hbf to Bucuresti Nord Gara A D
  5. Take the train from Bucuresti Nord Gara A to Sofia

$232 - $384

Drive  •  13 h 45 min

  1. Drive from Milan to Sofia 885 miles

$210 - $310

Questions & Answers

The cheapest way to get from Milan to Sofia is to fly which costs 15€ - 80€ and takes 5 h 39 min.

More details

The quickest way to get from Milan to Sofia is to fly which costs 50€ - 110€ and takes 5 h 9 min.

More details

Yes, there is a direct bus departing from Milan and arriving at Sofia. Services depart three times a day, and operate every day. The journey takes approximately 22 h.

More details

No, there is no direct train from Milan to Sofia. However, there are services departing from Milano Centrale and arriving at Sofia via Verona Porta Nuova, Innsbruck Hbf, Wien Hbf and Bucuresti Nord Gara A. The journey, including transfers, takes approximately 41 h 38 min.

More details

The distance between Milan and Sofia is 1168 km. The road distance is 1416 km.

Get driving directions

The best way to get from Milan to Sofia without a car is to bus which takes 22 h and costs 140€ - 190€.

More details

It takes approximately 5 h 9 min to get from Milan to Sofia, including transfers.

More details

Milan to Sofia bus services, operated by Georg, depart from Milan station.

More details

Milan to Sofia train services, operated by Trenitalia Frecce, depart from Milano Centrale station.

More details

The best way to get from Milan to Sofia is to fly which takes 5 h 9 min and costs 50€ - 110€. Alternatively, you can bus, which costs 140€ - 190€ and takes 22 h.

Mode details

Map of how to get from Milan to Sofia.
Launch map view
  • Distance: 730.3 miles
  • Duration: 5 h 9 min

What companies run services between Milan, Italy and Sofia, Bulgaria?

Bulgaria Air and Alitalia fly from Milan to Sofia twice daily. Alternatively, Georg operates a bus from Milan to Sofia once daily. Tickets cost $170 - $220 and the journey takes 22 h. Two other operators also service this route.

Airlines
Alitalia
Website
alitalia.com
Flights from Milan Linate to Sofia
Ave. Duration
2 h
When
Sunday
Estimated price
$65 - $230
Flights from Milan Linate to Sofia via Rome
Ave. Duration
4 h 17 min
When
Every day
Estimated price
$65 - $240
Flights from Milan Malpensa to Sofia
Ave. Duration
2 h
When
Friday
Estimated price
$50 - $280
Bulgaria Air
Website
air.bg
Flights from Milan Linate to Sofia
Ave. Duration
2 h
When
Sunday
Estimated price
$65 - $230
Flights from Milan Linate to Sofia via Rome
Ave. Duration
4 h 10 min
When
Monday, Wednesday, Friday and Sunday
Estimated price
$55 - $190
Flights from Milan Malpensa to Sofia
Ave. Duration
2 h
When
Friday
Estimated price
$50 - $280
Austrian Airlines
Website
austrian.com
Flights from Milan Malpensa to Sofia via Vienna
Ave. Duration
4 h 20 min
When
Every day
Estimated price
$150 - $480
Lufthansa
Website
lufthansa.com
Flights from Milan Malpensa to Sofia via Munich
Ave. Duration
4 h 30 min
When
Every day
Estimated price
$150 - $480
Flights from Milan Malpensa to Sofia via Frankfurt
Ave. Duration
4 h 35 min
When
Every day
Estimated price
$150 - $480
Flights from Milan Bergamo to Sofia via Munich
Ave. Duration
4 h
When
Monday to Saturday
Estimated price
$220 - $600
Ryanair
Website
ryanair.com
Flights from Milan Malpensa to Sofia
Ave. Duration
2 h 5 min
When
Every day
Estimated price
$15 - $170
CSA
Website
csa.cz
Flights from Milan Malpensa to Sofia via Prague
Ave. Duration
4 h 45 min
When
Tuesday, Thursday and Friday
Estimated price
$50 - $280
Wizz Air
Website
wizzair.com
Flights from Milan Bergamo to Sofia
Ave. Duration
2 h
When
Every day
Estimated price
$13 - $130
Train operators
Trenitalia Frecce

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Milano Rogoredo to Bologna C.Le
Ave. Duration
1 h 2 min
Frequency
Hourly
Estimated price
$27 - $40
Website
orario.trenitalia.com
Train from Milano Centrale to Verona Porta Nuova
Ave. Duration
1 h 13 min
Frequency
Hourly
Estimated price
$21 - $35
Website
orario.trenitalia.com
ItaloTreno
Phone
+39 060708
Website
italotreno.it
Train from Milano Rogoredo Station to Bologna Centrale Station
Ave. Duration
1 h 5 min
Frequency
Hourly
Estimated price
$24 - $35
Website
italotreno.it
Train from Milano Centrale Station to Verona Porta Nuova Station
Ave. Duration
1 h 16 min
Frequency
Every 4 hours
Estimated price
$21 - $29
Website
italotreno.it
Trenitalia Eurocity

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Milano Centrale to Verona Porta Nuova
Ave. Duration
1 h 22 min
Frequency
Twice daily
Estimated price
$30 - $45
Website
orario.trenitalia.com
Trenitalia

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Verona Porta Nuova to Innsbruck Hbf
Ave. Duration
3 h 32 min
Frequency
5 times a day
Estimated price
$22 - $45
Website
orario.trenitalia.com
Austrian Railways (ÖBB)

The national railway system of Austria, the OBB carried 209 million passengers on local and regional trains, and 35 million on long-distance trains in 2016 alone. The OBB’s 4865 km network covers 570 trains simultaneously at peak times, with one train leaving every 12 seconds, making it a supremely efficient way to travel around the country and surrounding region. The company’s extensive network connects cities in Austria, and adjacent European countries including Germany, Hungary, Liechtenstein, Czech Republic, Switzerland and Slovenia.

Contact Details
Website
oebb.at
Train from Innsbruck Hbf to Wien Hbf
Ave. Duration
4 h 16 min
Frequency
Hourly
Estimated price
$65 - $110
Website
fahrplan.oebb.at
Book at
Raileurope.com
Night train from Wien Hbf to Bucuresti Nord Gara A
Ave. Duration
19 h 23 min
Frequency
Once daily
Estimated price
$110 - $170
Website
fahrplan.oebb.at
Book at
Raileurope.com
Romanian Railways (CFR)
Bus operators
Georg
Phone
+ 359/38/66 34 04
Email
georg_ltd@abv.bg
Website
georg-bg.com
Bus from Milan to Sofia
Ave. Duration
22 h
Frequency
Once daily
Estimated price
$170 - $220
Schedules at
georg-bg.com
Union Ivkoni
Yubim
Website
yubim.eu
Bus from Milano to Sofia
Ave. Duration
21 h 47 min
Frequency
4 times a week
Estimated price
$130 - $170
Schedules at
yubim.eu
ATVO S.p.A.
Phone
+39 0421 5944
Email
atvo@atvo.it
Website
atvo.it
Bus from Bologna to Sofia Serdika
Ave. Duration
20 h 30 min
Frequency
Once daily
Estimated price
$55 - $80
Schedules at
atvo.it

Want to know more about travelling around Bulgaria

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.

More Questions & Answers

The quickest flight from Milan Linate Airport to Sofia Airport is the direct flight which takes 2 h.

Search flights

Milan to Sofia bus services, operated by Georg, arrive at Sofia station.

More details

Sofia is 1 h ahead of Milan. It is currently 5:04 PM in Milan and 6:04 PM in Sofia.

Milan to Sofia train services, operated by Romanian Railways (CFR), arrive at Sofia station.

More details

Yes, the driving distance between Milan to Sofia is 1416 km. It takes approximately 13 h 45 min to drive from Milan to Sofia.

Get driving directions

Bulgaria Air and Alitalia offer flights from Milan Linate Airport to Sofia Airport.

Search flights

There are 1239+ hotels available in Sofia. Prices start at $32 USD per night.

More details

The best way to get from Milan to Milan Linate Airport is to line 73 bus which takes 20 min and costs 1€ - 2€.

More details