Skip to content
Voykit
Draft data. Times, fares and step counts are desk estimates awaiting field checks. How we verify
Source checked
A source and a date are on record: we read it from an official or published page. Not yet confirmed on the ground.
Field checked
Someone checked it on the ground, with the date shown.
Plan calculated
Worked out by Voykit from its own data (times, distances, budgets). A calculation, not a measurement.

Unknown times stay unknown. How we verify

Malaysia

Getting around Malaysia: trains, buses, driving and domestic flights

Fly between Peninsular Malaysia and Borneo, and take the ETS train for KL–Ipoh–Butterworth; use express buses for Melaka and Cameron Highlands, Grab inside cities, and rent a car only for the Cameron Highlands or rural Borneo. Book ETS seats on the KTMB app days ahead because weekend trains sell out.

Not field-verified
Source checked
A source and a date are on record: we read it from an official or published page. Not yet confirmed on the ground.
Field checked
Someone checked it on the ground, with the date shown.
Plan calculated
Worked out by Voykit from its own data (times, distances, budgets). A calculation, not a measurement.

Unknown times stay unknown. How we verify

Updated Sep 20265 min read

Key facts

Best for KL–Penang
ETS train, about 4 h, RM60–110; buses 5 h, RM30–60
Best for Borneo
Flight; KL–Kota Kinabalu or Kuching about 1 h air, RM80–300
City default
Grab; RM10–30 for most KL trips
Airport transfercheck
KLIA Ekspres 28 min, RM55; check the timetable after 2024–25 disruptions
When a car pays off
Cameron Highlands, Fraser's Hill, rural Sabah and Sarawak; RM100–200 a day
Tolls
Touch 'n Go card; drive on the left
East-coast ferriescheck
Perhentian and Redang boats stop roughly Nov–Feb
Rail passes
No nationwide tourist rail pass; buy point-to-point on KTMB

First decision: peninsula or Borneo

Malaysia splits into two halves that barely connect by land. Peninsular Malaysia runs from the Thai border to Singapore and holds Kuala Lumpur, Penang, Melaka and the east coast. Sabah and Sarawak sit across the South China Sea on Borneo, reachable in practice only by plane.

So the first choice is not train versus bus, it is whether you are flying. If your trip includes Kota Kinabalu, Kuching, Sandakan or Semporna, book a domestic flight and treat the peninsula as a separate loop. Trying to combine both halves overland is not possible.

First decision: peninsula or Borneo
RouteBest modeTimeCost (2026 estimate)
KL – Penang / ButterworthETS trainAbout 4 hRM60–110
KL – IpohETS trainAbout 2.5 hRM60–110
KL – MelakaExpress busAbout 2 hRM30–60
KL – Cameron HighlandsBus, or car4–5 hRM30–60 bus
KL – Kota Kinabalu / KuchingFlightAbout 1 h air, 3 h door to doorRM80–300
KLIA – KL SentralKLIA Ekspres28 minRM55
Penang – LangkawiFerryAbout 3 hRM40–80
Kuala Besut – PerhentianFerry30–45 minRM40–80

Trains: the ETS and where it does not go

The ETS electric train is the comfortable option on the Kuala Lumpur–Ipoh–Butterworth spine, running city centre to city centre and usually on time. Book on the KTMB app; weekend and holiday departures sell out days ahead, and the cheapest fares go first.

Butterworth is the railhead for Penang: you cross to George Town by ferry or take a taxi over the bridges. Beyond that, the network thins. There is no useful train to Melaka, the Cameron Highlands or the east coast, and Sabah's only railway is a heritage line, not transport.

Kuala Lumpur's commuter lines (KTM Komuter, LRT, MRT, monorail) work well for the Klang Valley but are not a way to cross the country.

Express buses

Buses cover everything the train does not: Melaka, the Cameron Highlands, Kota Bharu, Kuantan, Johor Bahru and the Singapore crossing. They are frequent, cheap and reasonably comfortable on the long-haul coaches.

In Kuala Lumpur, most long-distance buses leave from Terminal Bersepadu Selatan (TBS), south of the centre and linked by LRT. Allow extra time in the evening peak. Buy seats online or at the counter; popular Friday and Sunday services fill up.

  • KL – Melaka: about 2 h, RM30–60
  • KL – Penang: about 5 h, RM30–60
  • KL – Cameron Highlands: 4–5 h, RM30–60
  • KL – Johor Bahru: 4–5 h, RM30–60

Driving and ride-hailing

Grab is the default in every Malaysian city and the simplest way to move around Kuala Lumpur, George Town, Johor Bahru and Kota Kinabalu. Fares inside KL are typically RM10–30; airport pickups carry a surcharge. Metered taxis exist but are less predictable.

A rental car makes sense for the Cameron Highlands, Fraser's Hill and rural Sabah and Sarawak, where buses are slow or absent. Expect RM100–200 a day. You drive on the left, highways are good, and tolls are paid with a Touch 'n Go card — buy one at a toll plaza or convenience store and top it up. Parking in city centres is the main hassle.

Driving and ride-hailing
SituationUseWhy
City sightseeingGrabCheap, no parking
KLIA to the centreKLIA Ekspres or Grab28 min by rail; 55–90 min by car
Cameron Highlands, Fraser's HillRental carWinding roads, thin bus coverage
Rural Sabah and SarawakRental car or tourLong distances, few services
Peninsular long haulTrain or busCheaper than driving and no tolls

Domestic flights and ferries

Flying is the only practical way to Borneo and often the fastest way to Penang, Langkawi or Johor Bahru. Fares run about RM80–300 for KL–Penang, KL–Langkawi, KL–Kota Kinabalu and KL–Kuching. Low-cost fares usually exclude checked bags, and Kuala Lumpur has two terminals: KLIA and KLIA2. Check which one your flight uses before booking the airport train.

Ferries handle the islands: Penang–Langkawi takes about 3 h (RM40–80), and boats to the Perhentian Islands and Redang run 30–45 minutes from the east coast. East-coast services stop roughly November to February with the monsoon, so plan island trips for March to October.

Practical notes

Buy a Touch 'n Go card for tolls, some parking and selected transit. Most intercity tickets are sold online or through apps, so a local SIM or eSIM helps; see our Malaysia SIM and eSIM page.

Weekends differ by state: Kelantan, Terengganu and Kedah take Friday–Saturday, while Johor moved to Saturday–Sunday in 2025 (check). Buses and trains fill on those days, and many shops close for Chinese New Year and Hari Raya.

For long trips, travel insurance is worth arranging before you fly, especially if you plan to drive or take ferries.

  • Book ETS and holiday buses days ahead
  • Keep small change for some public toilets (RM0.20–1)
  • Allow 55–90 minutes by car between KLIA and the centre

Questions people ask

What is the best way to get around Malaysia?

Fly between Peninsular Malaysia and Borneo. On the peninsula, take the ETS train for KL–Ipoh–Butterworth, express buses for Melaka and the Cameron Highlands, and Grab inside cities. Rent a car only for the Cameron Highlands or rural Borneo.

Do I need a car in Malaysia?

No for Kuala Lumpur, Penang, Melaka and Johor Bahru, where Grab and public transport cover most trips. A car helps in the Cameron Highlands, Fraser's Hill and rural Sabah and Sarawak, at roughly RM100–200 a day plus tolls.

Are there rail or bus passes for Malaysia?

There is no nationwide tourist rail or bus pass. KTMB sells point-to-point ETS and commuter tickets, and bus operators sell single seats. Frequent travellers can top up a Touch 'n Go card for Klang Valley transit and tolls.

How do I get from Kuala Lumpur to Penang?

The ETS train takes about 4 hours to Butterworth, RM60–110, then a ferry or taxi to George Town. Express buses take about 5 hours, RM30–60. Flights take about 1 hour but add airport time.

How do I get to Borneo?

Fly. Kuala Lumpur to Kota Kinabalu or Kuching is about 1 hour in the air, RM80–300, roughly 3 hours door to door. There is no practical overland link from the peninsula.

Can I take a train to Melaka or the Cameron Highlands?

No. Both are reached by express bus or car. Melaka is about 2 hours from Kuala Lumpur; the Cameron Highlands 4–5 hours by bus on winding roads.

Deep dive

Every source; changeable facts are marked check

Sources