A little intro to the beautiful island of Langkawi
Langkawi, located off the northwest coast of Malaysia, is a stunning archipelago consisting of 99 islands. Surrounded by turquoise waters, its biggest island (also called Langkawi) is made up of white-sand beaches that border the lush jungles in the middle.
Dotted in between are busy towns filled with locals, tourists, and of course, the duty free outlets Langkawi is well-known for. Far from a quiet retreat, Langkawi does still offer some natural wonders and vibrant diving spots.
Langkawi is an ideal place to go island-hopping, submerge yourself in waterfalls, and get lost in the rice fields. All of these can be seen from the Langkawi Sky Bridge. A little tip though, go early in the morning or you’ll be sharing this view with lots of other tourists!
How to get from Kuala Lumpur to Langkawi?
Is Langkawi your next destination after a tour of Malaysia’s capital?
There are 4 ways to travel the 415km distance from Kuala Lumpur to Langkawi: a 1-hour flight (plus transfers), a 6-hour-25-minute train via Kuala Kedah, a 7-hour-15-minute train via Kuala Perlis, or an 8-hour-25-minute bus also via Kuala Perlis. Fares range from 67 MYR ($15) to 125 MYR ($28).
The flight is the fastest way to get from Kuala Lumpur to Langkawi. With this option though, you’ll still have to travel to and from the airports, so travel time can take almost 2 hours. Combined fares start from 124 MYR ($28).
If you prefer to travel by land, the train is a comfortable option to get from Kuala Lumpur to Langkawi. You can take a train to either Kuala Kedah or Kuala Perlis. Kuala Kedah is nearer, so travel time is around 6.5 hours. This option is also cheaper with fares from 92 MYR ($20.50). Travelling via Kuala Perlis by train is one hour longer and costs 124 MYR ($28). Read on to find out which route is best for you.
Hoping to save both time and money? Day and night buses are available from Kuala Lumpur to Langkawi via Kuala Perlis with fares from 67 MYR ($15). Buses may not be as comfortable as the train, but they’re good enough that you can sleep for the most part of the journey. Travel time is around 8.5 hours, excluding transfers.
Note that taking a train or a bus also includes a ferry ride from either Kuala Kedah or Kuala Perlis to Langkawi.
A flight from Kuala Lumpur to Langkawi takes only a little over an hour. However, travel time to and from the 2 airports brings the total travel time closer to 2 hours.
There are 2 airports in Kuala Lumpur: Kuala Lumpur International Airport (KUL) and Subang Airport (SZB). Since fares from Kuala Lumpur Airport are often at least 50% cheaper, we’ll focus on that route.
Step 1: Kuala Lumpur City Centre to Kuala Lumpur Airport
Duration: 30 minutes Cost: 50 MYR ($11)
Kuala Lumpur Airport is located some 45km south of the city centre. To get to the airport, you can take a 30-minute train from 50 MYR ($11), a 1-hour bus for 10 MYR ($2.25), or a 1-hour taxi from 92 MYR ($20.50).
Due to heavy traffic in the city, we highly recommend taking the train, especially if you’re heading to the airport during peak hours. For more info, check out our page on Kuala Lumpur Airport.
Step 2: Kuala Lumpur to Langkawi by Flight
Duration: 1 hour 05 minutes Cost: from 57 MYR ($12.50)
AirAsia, a low-cost Malaysian airline, offers multiple daily flights from Kuala Lumpur to Langkawi.
If you book early, you can get a ticket for as low as 57 MYR ($12.50) for the 1-hour flight.
There are also a few flights with Malaysia Airlines and Malindo Air, but their airfares normally cost more expensive than Air Asia’s.
One way to travel by train from Kuala Lumpur to Langkawi is via Alor Setar in Kuala Kedah. From here, you’ll still need to take a bus and a ferry to Langkawi.
If you’re thinking of taking the train and are on a budget, we recommend this route. This option is cheaper than travelling via Kuala Perlis and also the next option to the flight with the shortest travel time at around 6.5 hours.
Step 1: Kuala Lumpur to Alor Setar by Train
Duration: 4.5 hours Cost: 66 MYR ($14.50)
There are several trains that operate from Kuala Lumpur Station to Alor Setar daily. However, some trains are available only on certain days. It’s best to book online beforehand on EasyBook to be guaranteed a seat for your desired date and time.
Ticket prices start from 66 MYR ($14.50) for ETS Gold and 85 MYR ($19) for ETS Platinum. Gold and Platinum trains are basically the same, but ETS Platinum stops only in major stations.
Both trains have the same travel time of 4.5 hours.
Note that not all of these trains are available daily, so it’s best to check EasyBook for the schedule on your desired date.
Step 2: Alor Setar to Kuala Kedah Ferry Terminal by Bus
Duration: 25 minutes Cost: 3 MYR ($0.65)
From Alor Setar Station, you’ll have walk 10-15 minutes to the nearest bus stop, where you can take the local bus to Kuala Kedah Ferry Terminal.
The bus ride takes around 25 minutes for 3 MYR ($0.65), but note that buses come only once every hour.
Alternatively, you can take a 20-minute taxi to the ferry terminal with rates from 20 MYR ($4.50).
Step 3: Kuala Kedah to Langkawi by Ferry
Duration: 1 hour 30 minutes Cost: 23 MYR ($5)
There are several ferries operating the Kuala Kedah Jetty to Langkawi route daily.
Departure times vary, but there are trips as early as 08:30 on some days. There are at least 5 ferry departures until the afternoon or early evening.
Ticket prices start from 23 MYR ($5) and travel time is 1 hour 30 minutes.
Tickets can sell out fast, so it’s best to book them online through the Langkawi Ferry Line website. You can also view the full schedule on this website.
Ferries dock at Kuah Jetty, the island’s main ferry terminal that is located around 20km east of Pantai Cenang. To get to your hotel, you can take a 40-minute taxi with rates from 40 MYR ($9). Shared taxis are also available around the port if you’re looking for cheaper fares.
Kuala Lumpur to Langkawi by Train via Kuala Perlis
It’s best to always check the latest schedules on EasyBook. To secure a seat, you can also book your tickets beforehand through the website.
Step 2: Arau Station to Kuala Perlis Ferry Terminal by Taxi
Duration: 30 minutes Cost: 35 MYR ($7.50)
The most convenient way to travel the 20km distance from Arau Station to Kuala Perlis Ferry Terminal is by taxi. The journey takes around 30 minutes with rates starting from 35 MYR ($7.50).
It is also possible to take the bus, but there are no direct buses to the ferry terminal. You need to first take a bus to the capital city of Kangar and then transfer to another bus to the ferry terminal. With that, travel time can easily take around 1 hour.
Step 3: Kuala Perlis to Langkawi by Ferry
Duration: 1 hour 15 minutes Cost: 18 MYR ($4.05)
Kuala Perlis is closer to the island of Langkawi than from Kuala Kedah, so the ferry ride would take only 1 hour 15 minutes. The ferry ticket is also cheaper at 18 MYR ($4.05).
There are several ferry departures from 08:00-19:00, but departure times still vary from day to day. You can check the latest schedules at the Langkawi Ferry Line website.
The ferry also docks at Kuah Jetty, which is still 40 minutes away from the main tourist area of Pantai Cenang. You can complete your journey by taking a private taxi with fares from 40 MYR ($9). Alternatively, you can take a shared taxi for cheaper rates.
Several bus companies offer both day and night trips from Kuala Lumpur to Kuala Perlis. We recommend taking an overnight bus so that you can save time and a night’s accommodation.
Bus fares start from 49 MYR ($11) and travel time is a little over 7 hours.
Below are our recommended bus schedules. The day trips would bring you to Kuala Perlis before the last ferry departure. For the night trips, you would still have to wait a few hours for the first ferry departure of the day.
For guaranteed seats, it’s best to book your ticket online via 12GoAsia beforehand.
Step 2: Kuala Perlis to Langkawi by Ferry
Duration: 1 hour 15 minutes Cost: 18 MYR ($4.05)
From Kuala Perlis Ferry Terminal, a ferry ride to Langkawi takes around 1 hour 15 minutes. Ferries operate from 08:00 to 1900.
Departure times vary, but you can easily check the latest schedules at the Langkawi Ferry Line website. You can also book your tickets in advance through this website.
A ferry ticket costs 18 MYR ($4.05).
The ferries dock at the island’s main ferry terminal, Kuah Jetty, which is still 20km away from Pantai Cenang. You’ll have to take a taxi to get to your hotel. Fares start from 40 MYR ($9) for the 40-minute taxi ride.
If you’re travelling solo, you can get cheaper rates by taking one of the shared taxis that you can find just outside the port.