Rome2Rio

How to get fromSerang to Surabayaby train, bus, car, plane, or shuttle

Find Transport to Surabaya

See all options

There are 12 ways to get from Serang to Surabaya by train, bus, car, plane, 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 via Jakarta

    best
    1. Take the train from Rangkasbitung to Tanahabangtrain train Green
    2. Take the train from Jakarta Gambir to Surabaya Pasar Turitrain train Argo Bromo Anggrek / ...
    12h 44m
    Rp 332,500–779,500
  2. Bus

    cheapest
    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus Merak
    2. Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus bus Jakarta - Surabaya Kota
    14h 15m
    Rp 241,433–1,296,971
  3. Drive 808.4 km

    1. Drive from Serang to Surabayacar car 808.4 km
    10h 8m
    Rp 1,596,227–2,305,661
  4. Bus to Soekarno–Hatta International Airport, fly to Juanda International Airport

    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane plane CGK - SUB
    7h 51m
    Rp 1,031,433–2,516,971
  5. Train

    1. Take the train from Rangkasbitung to Tanahabangtrain train Green
    2. Take the train from Pasar Senen to Surabaya Pasar Turitrain train Gumarang / ...
    14h 53m
    Rp 329,500–771,500
  6. Train, bus, shuttle

    1. Take the train from Rangkasbitung to Palmerahtrain train
    2. Take the bus from Jakarta Daan Mogot to Kudusbus bus
    3. Take a shuttle bus from Kudus to Surabayashuttle bus
    21h 22m
    Rp 489,500–1,081,500
  7. Bus to Soekarno–Hatta International Airport, fly to Abdul Rachman Saleh Airport, train

    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Abdul Rachman Saleh Airport (MLG)plane plane CGK - MLG
    3. Take the train from Lawang to Gubengtrain train
    8h 3m
    Rp 1,456,933–2,476,971
  8. Train, train to Halim Perdanakusuma Airport, fly to Juanda International Airport

    1. Take the train from Serang to Rangkasbitungtrain train
    2. Take the train from Rangkasbitung to Palmerahtrain train
    3. Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane plane HLP - SUB
    4. Take the train from Waru to Surabaya Gubengtrain train
    9h 40m
    Rp 1,219,000–2,701,500
  9. Bus to Soekarno–Hatta International Airport, fly to Ahmad Yani, train

    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Ahmad Yani (SRG)plane plane CGK - SRG
    3. Take the train from Semarang Tawang to Surabaya Pasar Turitrain train
    8h 47m
    Rp 1,251,933–2,766,971
  10. Bus to Soekarno–Hatta International Airport, fly to Kediri, shuttle

    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Kediri (DHX)plane plane CGK - DHX
    3. Take a shuttle bus from Nganjuk to Surabayashuttle bus
    7h 34m
  11. Bus to Soekarno–Hatta International Airport, fly to Adisumarmo International Airport, train

    1. Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Adisumarmo International Airport (SOC)plane plane CGK - SOC
    3. Take the train from Solo Balapan to Surabaya Gubengtrain train
    9h 44m
    Rp 1,128,933–1,973,971
  12. Train to Halim Perdanakusuma Airport, fly to Abdul Rachman Saleh Airport, train

    1. Take the train from Rangkasbitung to Palmerahtrain train
    2. Fly from Halim Perdanakusuma Airport (HLP) to Abdul Rachman Saleh Airport (MLG)plane plane HLP - MLG
    3. Take the train from Lawang to Gubengtrain train
    9h 47m
    Rp 1,744,500–7,261,500

Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB) flights

Calendar213Weekly Planes
Duration1h 34mAverage Duration
TicketRp 1,043,464Cheapest Price
See schedules

Questions & Answers

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

You can take a train from Serang to Surabaya Pasar Turi via Rangkasbitung, Tanah Abang, Sudirman, Transport Hub Dukuh Atas, Gambir 3, and Jakarta Gambir in around 12h 44m. Alternatively, you can take a bus from Terminal Pakupatan Serang to Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta in around 14h 15m.

Airlines
Train operators
Bus 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 Travelling by boat in Italy, 4 of the smartest ways to explore Australia, and The London Underground: Essential tips to navigate the Tube - to help you get the most out of your next trip.

More Questions & Answers