There are 7 ways to get from Surabaya to Medan by plane, train, bus, 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.
Fly from Juanda International Airport, train
best- Fly from Juanda International Airport (SUB) to Kuala Namu International Airport (KNO)plane SUB - KNO
- Take the train from Kuala Namu to Medantrain
7h 5mRp 2,876,191–3,525,953Bus, ferry
cheapest- Take the bus from Surabaya Kota to DAMRI Bus Station Jakartabus Surabaya Kota - Jakarta
- Take the ferry from Port of Tanjung Priok to Belawanferry KM Kelud
3d 3hRp 939,976–1,712,321Train, bus, ferry
- Take the train from Surabaya Pasar Turi to Jakarta Gambirtrain
- Take the bus from Gambir Station to Jakarta Airportbus
- Take the ferry from Port of Tanjung Priok to Belawanferry
3d 1hRp 1,063,000–1,845,502Drive, car ferry
- Drive from Surabaya to Merakcar
- Take the car ferry from Merak to Bakauheni Portcarferry
- Drive from Bakauheni Port to Medancar
36h 9mRp 4,961,403–7,636,693Train to Abdul Rachman Saleh Airport, fly
- Take the train from Gubeng to Lawangtrain
- Fly from Abdul Rachman Saleh Airport (MLG) to Kuala Namu International Airport (KNO)plane MLG - KNO
11h 29mRp 3,170,465–4,695,000Train, ferry
- Take the train from Surabaya Pasar Turi to Pasar Senentrain Gumarang / ...
- Take the ferry from Port of Tanjung Priok to Belawanferry KM Kelud
3d 3hRp 1,043,500–1,348,153Shuttle, bus, ferry
- Take a shuttle bus from Surabaya to Kudus
- Take the bus from Kudus to Jakarta Kampung Rambutan Bus Stationbus
- Take the ferry from Port of Tanjung Priok to Belawanferry
3d 8hRp 1,148,500–1,653,500
Juanda International Airport (SUB) to Kuala Namu International Airport (KNO) flights
Questions & Answers
The cheapest way to get from Surabaya to Medan is to train and ferry which costs Rp1000000 - Rp1400000 and takes 3 days 3h.
The fastest way to get from Surabaya to Medan is to fly and train which takes 7h 5m and costs Rp2800000 - Rp3600000.
The distance between Surabaya and Medan is 2031 km.
The best way to get from Surabaya to Medan without a car is to train and bus and ferry which takes 3 days 1h and costs Rp1000000 - Rp1900000.
It takes approximately 7h 5m to get from Surabaya to Medan, including transfers.
There are 451+ hotels available in Medan.
What companies run services between Surabaya, Indonesia and Medan, Indonesia?
There is no direct connection from Surabaya to Medan. However, you can take the taxi to Juanda-International-Airport-SUB airport, fly to Kuala Namu International Airport (KNO), walk to Kuala Namu, then take the train to Medan. Alternatively, you can take a train from Surabaya Pasar Turi to Medan via Jakarta Gambir, Gambir Station, Jakarta Airport, Soekarno-Hatta International Airport, Jakarta Tanjung Priok Bus Station, Port of Tanjung Priok, and Belawan in around 3d 1h.
- Website
- airasia.com
Flights from Juanda International Airport to Kuala Namu International Airport via Kuala Lumpur
- Ave. Duration
- 5h 27m
- When
- Every day
- Estimated price
- Rp 1,800,000–4,200,000
Flights from Juanda International Airport to Kuala Namu International Airport via Penang
- Ave. Duration
- 6h 25m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 1,900,000–4,500,000
- Website
- batikair.com
Flights from Abdul Rachman Saleh Airport to Kuala Namu International Airport via Soekarno–Hatta
- Ave. Duration
- 6h 12m
- When
- Every day
- Estimated price
- Rp 5,000,000–14,000,000
- Website
- superairjet.com
Flights from Juanda International Airport to Kuala Namu International Airport
- Ave. Duration
- 3h 5m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 2,100,000–4,000,000
- Website
- singaporeair.com
Flights from Juanda International Airport to Kuala Namu International Airport via Singapore Changi
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- Rp 2,100,000–9,500,000
- Website
- malaysiaairlines.com
Flights from Juanda International Airport to Kuala Namu International Airport via Kuala Lumpur
- Ave. Duration
- 5h
- When
- Tuesday, Friday, Saturday, and Sunday
- Estimated price
- Rp 1,300,000–6,000,000
- Website
- citilink.co.id
Flights from Abdul Rachman Saleh Airport to Kuala Namu International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- Rp 3,000,000–4,200,000
- [email protected]
- Website
- railink.co.id
Train from Kuala Namu to Medan
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- Rp 40,000–65,000
- Schedules at
- railink.co.id
- Book at
- reservation.railink.co.id
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Surabaya Pasar Turi to Jakarta Gambir
- Ave. Duration
- 7h 45m
- Frequency
- 4 times a day
- Estimated price
- Rp 320,000–440,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–440,000
- Business
- Rp 490,000–550,000
- Executive
- Rp 700,000–1,100,000
Train from Gubeng to Lawang
- Ave. Duration
- 1h 23m
- Frequency
- Once daily
- Estimated price
- Rp 45,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 45,000–320,000
- Business
- Rp 300,000–550,000
- Executive
- Rp 80,000–650,000
Train from Surabaya Pasar Turi to Pasar Senen
- Ave. Duration
- 10h 10m
- Frequency
- 5 times a day
- Estimated price
- Rp 320,000–440,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–440,000
- Business
- Rp 490,000–550,000
- Executive
- Rp 700,000–1,100,000
- Phone
- (021) 1500 825
- [email protected]
- Website
- damri.co.id
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 45 min
- Frequency
- Every 15 minutes
- Estimated price
- Rp 13,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Surabaya Kota to DAMRI Bus Station Jakarta
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 210,000–800,000
- Book at
- https://12go.asia/en/operator/damri
- [email protected]
- Website
- indahjayatrans.com
Shuttle from Surabaya to Kudus
- Ave. Duration
- 2h 26m
- Frequency
- Twice daily
- Estimated price
- Rp 220,000–300,000
- Schedules at
- indahjayatrans.com
- Phone
- +62291440019
- [email protected]
- Website
- nu3tara.com
Bus from Kudus to Jakarta Kampung Rambutan Bus Station
- Ave. Duration
- 10h 19m
- Frequency
- Twice daily
- Estimated price
- Rp 200,000–440,000
- Book at
- https://12go.asia/en/operator/nusantara
- Phone
- +62 811-1621-162
- [email protected]
- Website
- facebook.com
Ferry from Port of Tanjung Priok to Belawan
- Ave. Duration
- 2d 14h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
Ferry from Port of Tanjung Priok to Belawan
- Ave. Duration
- 2d 14h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
Ferry from Port of Tanjung Priok to Belawan
- Ave. Duration
- 2d 14h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
Ferry from Port of Tanjung Priok to Belawan
- Ave. Duration
- 2d 14h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
- Phone
- +62 811-1021-191
- [email protected]
- Website
- asdp.id
Car ferry from Merak to Bakauheni Port
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 16,000–360,000
- Schedules at
- ferizy.com
- Regular
- Rp 22,700
- Express
- Rp 84,800
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 Travelling to and around Russia for the 2018 FIFA World Cup, Travelling around the UAE, and Need to know: Greyhound - to help you get the most out of your next trip.



















