Rome2Rio

How to get fromMilan to Sofiaby bus, plane, train or car

Find Transport to Sofia

See all options

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

  1. Bus to Il Caravaggio International Airport, fly

    best
    1. Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Stationbus bus
    2. Fly from Il Caravaggio International Airport (BGY) to Sofia Airport (SOF)plane plane BGY - SOF
    5h 43m
    $32–221
  2. Train, bus

    1. Take the train from Milano Centrale to Verona Porta Nuovatrain train Fr
    2. Take the bus from Verona Porta Nuova to Sofiabus bus
    20h 13m
    $128–203
  3. Drive 1,386.6 km

    1. Drive from Milan to Sofiacar car 1,386.6 km
    13h 15m
    $251–363
  4. Fly from Milan Linate Airport

    1. Fly from Milan Linate Airport (LIN) to Sofia Airport (SOF)plane plane LIN - SOF
    7h 20m
    $93–274
  5. Train to Milano Malpensa Airport, fly

    1. Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train train
    2. Fly from Milano Malpensa Airport (MXP) to Sofia Airport (SOF)plane plane MXP - SOF
    5h 46m
    $56–197
  6. Train to Bologna Guglielmo Marconi Airport, fly

    1. Take the train from Milan Rogoredo to Bologna Centraletrain train
    2. Fly from Bologna Guglielmo Marconi Airport (BLQ) to Sofia Airport (SOF)plane plane BLQ - SOF
    5h 59m
    $87–330
  7. Train to Turin Caselle Airport, fly

    1. Take the train from Milano Centrale to Torino Porta Susatrain train
    2. Fly from Turin Caselle Airport (TRN) to Sofia Airport (SOF)plane plane TRN - SOF
    6h 33m
    $76–248
  8. Train to Zurich Airport, fly

    1. Take the train from Milano Centrale to Zuerich Hbtrain train
    2. Fly from Zurich Airport (ZRH) to Sofia Airport (SOF)plane plane ZRH - SOF
    8h 34m
    $153–313
  9. Train, bus via Niš

    1. Take the train from Milano Centrale to Vicenzatrain train Fr
    2. Take the bus from Vicenza to Niš, Autobuska Stanicabus bus
    3. Take the bus from Niš, Autobuska Stanica to Sofiya, Avtogara Serdikabus bus
    21h 58m
    $143–258
  10. Bus

    1. Take the bus from Milano, Autostazione Lampugnano to Sofia Serdica Bus Stopbus bus Union Ivkoni - Unibus 3602 / ...
    22h
    $107

Milan to Sofia by train and bus

Calendar2Weekly Services
Duration20h 13mAverage Duration
Ticket$128Cheapest Price
See schedules

Questions & Answers

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

ITA Airways, Lufthansa, and five other airlines fly from Milan Linate Airport (LIN) to Sofia Airport (SOF) 5 times a day. Alternatively, Union Ivkoni operates a bus from Milano, Autostazione Lampugnano to Sofia Serdica Bus Stop 6 times a week. Tickets cost $65–95 and the journey takes 22h. Two other operators also service this route.

Airlines
Train operators
Bus operators

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.

Related travel guides

Italy Travel Guides

Read the travel guideItaly Travel Guides

More Questions & Answers