Rome2Rio

How to get fromMedan to Surabayaby train, plane, bus, busferry, ferry, car, car ferry, or shuttle

Find Transport to Surabaya

See all options

There are 13 ways to get from Medan to Surabaya by train, plane, bus, busferry, ferry, car, car ferry, or shuttle

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Train to Kuala Namu International Airport, fly to Juanda International Airport

    best
    1. Take the train from Medan to Kuala Namutrain train
    2. Fly from Kuala Namu International Airport (KNO) to Juanda International Airport (SUB)plane plane KNO - SUB
    10h 7m
    Rp 2,749,500–3,935,000
  2. Bus, bus and ferry

    cheapest
    1. Take the bus from Medan Putra Pelangi to Bandar Lampungbus bus
    2. Take the busferry from Bandar Lampung to DAMRI Bus Station Jakartabusferry bus ferry
    3. Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus bus
    2d 4h
    Rp 955,014–2,040,757
  3. Bus, bus and ferry, train

    1. Take the bus from Medan Putra Pelangi to Bandar Lampungbus bus
    2. Take the busferry from Bandar Lampung to Gambir Stationbusferry bus ferry
    3. Take the train from Jakarta Gambir to Surabaya Pasar Turitrain train
    2d 1h
    Rp 1,065,014–1,680,757
  4. Ferry, train via Jakarta

    1. Take the ferry from Belawan to Port of Tanjung Priokferry ferry KM Kelud
    2. Take the train from Jakarta Gambir to Surabaya Pasar Turitrain train Argo Bromo Anggrek / ...
    2d 22h
    Rp 1,052,870–1,364,392
  5. Drive, car ferry

    1. Drive from Medan to Bakauheni Portcar car
    2. Take the car ferry from Bakauheni Port to Merakcarferry car ferry
    3. Drive from Merak to Surabayacar car
    36h 5m
    Rp 4,965,446–7,598,089
  6. Fly Kuala Namu International Airport to Abdul Rachman Saleh Airport, train

    1. Fly from Kuala Namu International Airport (KNO) to Abdul Rachman Saleh Airport (MLG)plane plane KNO - MLG
    2. Take the train from Lawang to Gubengtrain train
    12h 5m
    Rp 3,175,000–4,695,000
  7. Fly Kuala Namu International Airport to Kediri, shuttle

    1. Fly from Kuala Namu International Airport (KNO) to Kediri (DHX)plane plane KNO - DHX
    2. Take a shuttle bus from Nganjuk to Surabayashuttle bus
    11h 30m
  8. Bus, bus to Silangit Airport, fly to Juanda International Airport

    1. Take the bus from Amplas Station to Parapatbus bus
    2. Take the bus from Parapat to Silangit Airportbus bus
    3. Fly from Silangit Airport (DTB) to Juanda International Airport (SUB)plane plane DTB - SUB
    17h 6m
    Rp 2,630,781–4,841,605
  9. Fly Kuala Namu International Airport to Ahmad Yani, train

    1. Fly from Kuala Namu International Airport (KNO) to Ahmad Yani (SRG)plane plane KNO - SRG
    2. Take the train from Semarang Tawang to Surabaya Pasar Turitrain train
    12h 43m
    Rp 2,370,000–3,985,000
  10. Fly Kuala Namu International Airport to Adisumarmo International Airport, train

    1. Fly from Kuala Namu International Airport (KNO) to Adisumarmo International Airport (SOC)plane plane KNO - SOC
    2. Take the train from Solo Balapan to Surabaya Gubengtrain train
    13h 30m
    Rp 2,397,000–3,992,000
  11. Fly Kuala Namu International Airport to Yogyakarta International Airport, train

    1. Fly from Kuala Namu International Airport (KNO) to Yogyakarta International Airport (YIA)plane plane KNO - YIA
    2. Take the train from Yogyakarta International Airport to Yogyakarta Tugu Stationtrain train
    3. Take the train from Yogyakarta to Surabaya Gubengtrain train
    13h 12m
    Rp 2,740,000–3,945,000
  12. Ferry, train

    1. Take the ferry from Belawan to Port of Tanjung Priokferry ferry KM Kelud
    2. Take the train from Pasar Senen to Surabaya Pasar Turitrain train Gumarang / ...
    3d 1h
    Rp 1,046,870–1,348,392
  13. Ferry, bus, shuttle

    1. Take the ferry from Belawan to Port of Tanjung Priokferry ferry
    2. Take the bus from Jakarta Kampung Rambutan Bus Station to Kudusbus bus
    3. Take a shuttle bus from Kudus to Surabayashuttle bus
    3d 6h
    Rp 1,146,870–1,648,392

Kuala Namu International Airport (KNO) to Juanda International Airport (SUB) flights

Calendar96Weekly Planes
Duration5h 26mAverage Duration
TicketRp 1,218,721Cheapest Price
See schedules

Questions & Answers

What companies run services between Medan, Indonesia and Surabaya, Indonesia?

There is no direct connection from Medan to Surabaya. However, you can take the train to Kuala Namu, walk to Kuala-Namu-Airport-KNO airport, fly to Juanda International Airport (SUB), walk to Juanda Surabaya Airport, take the bus to Surabaya Bungurasih Bus Station, walk to Waru, then take the train to Surabaya Gubeng. Alternatively, you can take a bus from Medan Putra Pelangi to Surabaya Pasar Turi via Bandar Lampung, Bandar Lampung, Gambir Station, and Jakarta Gambir in around 2d 1h.

Airlines
Train operators
Bus operators
Ferry operators

Want to know more about travelling around the world?

Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Want to know more about Flixbus?, 4 of the smartest ways to explore Australia, and How to get from Southend Airport into central London - to help you get the most out of your next trip.