Kuala Lumpur, Malaysia

Getting Around Malaysia: Trains, Buses and Domestic Flights

Working out how to travel around Malaysia is easier than it looks. Peninsular Malaysia has a fast electric train line running from the Thai border to Johor Bahru, a dense network of comfortable long-distance buses and cheap domestic flights, while Grab covers almost every town. Borneo is different: the distances are large and roads are slower, so most visitors fly between Kuala Lumpur, Kota Kinabalu and Kuching. This guide explains each option and when to use it.

Trains: KTM ETS on the west coast

Malaysia’s national rail operator, KTMB, runs the ETS (Electric Train Service) on the electrified line down the west coast. It is the most comfortable way to travel between the main cities on the peninsula, with reserved seats, air conditioning and a café car on most services.

After the final section to JB Sentral opened in December 2025, the ETS now runs from Padang Besar on the Thai border through Butterworth (for Penang), Ipoh and KL Sentral to Johor Bahru. Several service types stop at different numbers of stations, and the faster Express and Platinum trains are worth choosing on longer runs. Approximate journey times at the time of writing:

Route Approximate time by ETS
KL Sentral to Ipoh 2 to 2.5 hours
KL Sentral to Butterworth (Penang) 3.5 to 4 hours
KL Sentral to Padang Besar (Thai border) 5 to 5.5 hours
KL Sentral to JB Sentral (Johor Bahru) about 4 hours 20 minutes

Book on the official KTMB website or the KITS app. Weekend and holiday trains sell out, so book a few days ahead and longer around public holidays. From Butterworth station, the Penang ferry terminal is a short walk away for the crossing to George Town.

KTMB also runs the slower Intercity line through the interior from Gemas to Tumpat near Kota Bharu, often called the jungle railway. It is a scenic but slow way to reach Kelantan and the edge of Taman Negara. The East Coast Rail Link (ECRL), a new line between the Klang Valley and Kota Bharu, is still under construction, with passenger services expected from around 2027.

City trains in Kuala Lumpur

Within the Klang Valley, the LRT, MRT, KL Monorail and KTM Komuter lines connect most places you will want to go, with KL Sentral as the main hub. A Touch ‘n Go card works across the network and is easy to top up at stations. For the airport, see our guide to getting from KLIA to Kuala Lumpur.

Long-distance buses

Express buses go almost everywhere on the peninsula, including places the train does not reach, such as Cameron Highlands, Melaka, Kuala Besut (for the Perhentians), Mersing (for Tioman) and Kuala Terengganu. Fares are low and many companies run comfortable coaches with wide seats.

In Kuala Lumpur, most southbound and many east coast buses use Terminal Bersepadu Selatan (TBS), which is linked to Bandar Tasik Selatan station. Some services also leave from Pudu Sentral in the city centre. Book on the operator’s site or a booking platform such as Easybook, redBus or BusOnlineTicket, and check which terminal your bus uses. Allow extra time on Friday evenings and before holidays, when traffic out of KL is heavy.

Domestic flights

Flying is the practical choice for long hops and for any trip to Borneo. AirAsia, Malaysia Airlines, Batik Air and Firefly fly between the main cities, and fares booked early are often cheap. KL to Penang, Langkawi or Kota Bharu takes about an hour in the air, and KL to Kota Kinabalu or Kuching around two to two and a half hours.

In Sabah and Sarawak, AirBorneo (the former MASwings, now owned by the Sarawak government) operates rural air services to smaller towns and to Mulu National Park, which has no road access. Note that Sabah and Sarawak run their own immigration controls, so carry your passport on domestic flights to Borneo and between the two states.

Grab and taxis

Grab is the main ride-hailing app in Malaysia and works in all major cities and most tourist towns, including Langkawi, Penang, Ipoh, Melaka, Kota Kinabalu and Kuching. The price is fixed when you book, which removes any haggling, and you can pay by card or cash. Download it before you arrive and add a payment method.

Metered taxis exist, but in practice many drivers prefer to agree a fare. Airport taxis use coupon systems with fixed prices. In remote areas, such as parts of the east coast and Borneo, ride-hailing is thin and you may need to book a driver through your accommodation.

Ferries and boats

Boats are the only way to reach most islands. The main routes:

  • Langkawi: ferries from Kuala Perlis and Kuala Kedah, plus a longer seasonal service from Penang.
  • Penang: the short passenger ferry between Butterworth and George Town, alongside the two road bridges.
  • Perhentian Islands: speedboats from Kuala Besut.
  • Redang: boats from the Merang area and Kuala Terengganu, usually arranged by your resort.
  • Tioman: ferries from Mersing and Tanjung Gemok.
  • Sabah islands: speedboats from Jesselton Point in Kota Kinabalu and from Semporna.

East coast boat services are reduced or suspended during the northeast monsoon, roughly November to February. Timetables change often, so confirm the latest schedule with the operator or your accommodation the day before.

Driving

Hiring a car makes sense in Langkawi, Sabah, the Cameron Highlands and for touring the quieter states. Malaysia drives on the left, highways are good and tolled, and you will need a Touch ‘n Go card or eWallet for the tolls. Our car rental guide covers licence rules and road tips.

How to travel around Malaysia: which option to choose

Journey Best option
KL to Ipoh or Penang ETS train
KL to Melaka Bus from TBS
KL to Cameron Highlands Bus
KL to Langkawi Flight
KL to the Perhentians or Redang Flight to Kota Bharu or Kuala Terengganu, then road and boat; or an overnight bus
Peninsula to Sabah or Sarawak Flight
Short city hops Grab or city trains

Getting Around Malaysia: frequently asked questions

What is the best way to travel around Malaysia?

On the peninsula's west coast, the ETS train is the most comfortable option between KL, Ipoh, Penang and Johor Bahru. Buses fill the gaps to places such as Melaka and Cameron Highlands. For Langkawi and for Sabah and Sarawak, a domestic flight is the practical choice.

Is there a train from Kuala Lumpur to Penang?

Yes. KTMB's ETS trains run from KL Sentral to Butterworth in roughly 3.5 to 4 hours depending on the service. From Butterworth station you can walk to the ferry terminal and cross to George Town, or take a Grab across the bridge.

Does Grab work in Malaysia?

Yes. Grab is the main ride-hailing app and works in Kuala Lumpur, Penang, Langkawi, Melaka, Ipoh, Kota Kinabalu, Kuching and most other towns. The fare is fixed when you book and you can pay by card or cash.

Can you take a train from Kuala Lumpur to Johor Bahru?

Yes. Since December 2025 the ETS runs all the way from KL Sentral to JB Sentral on the electrified line, taking about 4 hours 20 minutes. Book ahead on the KTMB website or app, as weekend trains fill up.

Do I need my passport to fly to Sabah or Sarawak?

Yes. Sabah and Sarawak have their own immigration controls, so international visitors pass through an immigration check when arriving from Peninsular Malaysia and when travelling between the two states. Keep your passport with you on these flights.