Rome2Rio

How to get fromSurabaya to Langkawiby plane, bus, ferry, train, or subway

Find Transport to Langkawi

See all options

There are 6 ways to get from Surabaya to Langkawi by plane, bus, ferry, train, or subway

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

  1. Fly to Langkawi International Airport

    best
    1. Fly from Juanda International Airport (SUB) to Langkawi International Airport (LGK)plane plane SUB - LGK
    5h 9m
    RM 551–1,787
  2. Ferry, train

    cheapest
    1. Take the ferry from Surabaya - Tanjung Perak Port to Pelabuhan Sri Bayintan Kijangferry ferry
    2. Take the ferry from Sri Bintan Pura Ferry Terminal to Tanah Merahferry ferry
    3. Take the train from Jb Sentral to Alor Setartrain train Ets
    4. Take the ferry from Kuala Kedah to Langkawi Ferry Terminalferry ferry
    3d 19h
    RM 328–884
  3. Bus, ferry

    1. Take the bus from Surabaya Kota to DAMRI Bus Station Jakartabus bus
    2. Take the ferry from Port of Tanjung Priok to Batu Amparferry ferry
    3. Take the ferry from Batam Harbour Bay to Puteri Harbour Ferryferry ferry
    4. Take the bus from JB Larkin Terminal to Kuala Perlisbus bus
    5. Take the ferry from Kuala Perlis to Langkawi Ferry Terminalferry ferry
    2d 21h
    RM 384–748
  4. Fly to Alor Setar, ferry

    1. Fly from Juanda International Airport (SUB) to Alor Setar (AOR)plane plane SUB - AOR
    2. Take the ferry from Kuala Kedah to Langkawi Ferry Terminalferry ferry
    8h 15m
    RM 506–1,642
  5. Ferry, subway, bus

    1. Take the ferry from Surabaya - Tanjung Perak Port to Pelabuhan Sri Bayintan Kijangferry ferry
    2. Take the ferry from Sri Bintan Pura Ferry Terminal to Tanah Merahferry ferry
    3. Take the subway from Expo to Bukit Panjangsubway subway Dt
    4. Take the bus from JB Larkin Terminal to Kuala Perlisbus bus
    5. Take the ferry from Kuala Perlis to Langkawi Ferry Terminalferry ferry
    3d 20h
    RM 377–922
  6. Ferry, train, bus

    1. Take the ferry from Surabaya - Tanjung Perak Port to Pelabuhan Sri Bayintan Kijangferry ferry
    2. Take the ferry from Sri Bintan Pura Ferry Terminal to Tanah Merahferry ferry
    3. Take the train from JB Sentral to Kluangtrain train
    4. Take the bus from Terminal Bas Kluang to Kuala Perlisbus bus
    5. Take the ferry from Kuala Perlis to Langkawi Ferry Terminalferry ferry
    3d 21h
    RM 511–1,052

Juanda International Airport (SUB) to Langkawi International Airport (LGK) flights

Calendar28Weekly Planes
Duration5hAverage Duration
TicketRM 482Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Surabaya, Indonesia and Langkawi, Malaysia?

Malaysia Airlines, Indonesia AirAsia, and AirAsia fly from Juanda International Airport (SUB) to Langkawi International Airport (LGK) 4 times a day.

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 Is ride-sharing platform BlaBlaCar right for you?, Travel Insider: Top Japan travel tips by Beatrix Holland, and How to plan an amazing trip around Scandinavia - to help you get the most out of your next trip.