There are 6 ways to get from Johor Bahru to Kangar by plane, bus, train, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Senai International Airport, bus
best- Fly from Senai International Airport (JHB) to Alor Setar (AOR)plane JHB - AOR
- Take the bus from Jitra to Kangarbus
4h 56mRM 224–612Train
cheapest- Take the train from Jb Sentral to Arautrain Ets
9h 26mRM 41–151Bus
- Take the bus from JB Larkin Terminal to Terminal Bukit Lagibus
11h 25mRM 80–210Drive 803.3 km
- Drive from Johor Bahru to Kangarcar 803.3 km
8h 45mRM 136–197Fly from Seletar Airport
- Fly from Seletar Airport (XSP) to Alor Setar (AOR)plane XSP - AOR
8h 35mRM 691–1,157Bus via Kluang
- Take the bus from JB Larkin Terminal to Terminal Bas Kluangbus
- Take the bus from Terminal Bas Kluang to Kangarbus
13h 26mRM 206–294
Johor Bahru to Kangar by bus
Comparing Your Travel Options
The cheapest way to get from Johor Bahru to Kangar is to train which costs RM 40 - RM 160 and takes 9h 26m.
The fastest way to get from Johor Bahru to Kangar is to fly and bus which takes 4h 56m and costs RM 220 - RM 650.
Yes, there is a direct bus departing from JB Larkin Terminal and arriving at Terminal Bukit Lagi. Services depart once daily, and operate every day. The journey takes approximately 11h 25m.
No, there is no direct train from Johor Bahru to Kangar. However, there are services departing from Jb Sentral and arriving at Arau via . The journey, including transfers, takes approximately 9h 26m.
The distance between Johor Bahru and Kangar is 701 km. The road distance is 803.3 km.
The best way to get from Johor Bahru to Kangar without a car is to train which takes 9h 26m and costs RM 40 - RM 160.
It takes approximately 4h 56m to get from Johor Bahru to Kangar, including transfers.
Johor Bahru to Kangar bus services, operated by Mayang Sari Express, depart from JB Larkin Terminal station.
Johor Bahru to Kangar train services, operated by KTM Intercity, depart from Jb Sentral station.
The best way to get from Johor Bahru to Kangar is to train which takes 9h 26m and costs RM 40 - RM 160. Alternatively, you can bus, which costs RM 80 - RM 210 and takes 11h 25m, you could also fly, which costs RM 650 - RM 1200 and takes 8h 35m.
What companies run services between Johor Bahru, Malaysia and Kangar, Malaysia?
KTM Intercity operates a train from Jb Sentral to Arau twice daily. Tickets cost RM 21–95 and the journey takes 9h 18m. KTM ETS also services this route once daily. Alternatively, Mayang Sari Express operates a bus from JB Larkin Terminal to Terminal Bukit Lagi once daily. Tickets cost RM 90–170 and the journey takes 11h 25m. Sri Maju also services this route once daily.
- Website
- malaysiaairlines.com
Flights from Senai International Airport to Alor Setar via Kuala Lumpur
- Ave. Duration
- 2h 50m
- When
- Saturday and Sunday
- Estimated price
- RM 190–470
Flights from Seletar Airport to Alor Setar via Sultan Abdul Aziz Shah
- Ave. Duration
- 3h 52m
- When
- Every day
- Estimated price
- RM 500–1,500
- Phone
- +603 - 9779 1200
- [email protected]
- Website
- KTMB
Train from Jb Sentral to Arau
- Ave. Duration
- 9h 18m
- Frequency
- Twice daily
- Estimated price
- RM 21–95
- Website
- KTMB
- Shuttle
- RM 21–30
- Express
- RM 65–95
- Phone
- +60165217775
- [email protected]
- Website
- easybook.com
Bus from Jitra to Kangar
- Ave. Duration
- 45 min
- Frequency
- Twice daily
- Estimated price
- RM 5–10
- Schedules at
- kesatuanexpress.com
- Book at
- easybook.com
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 How to get from London to Edinburgh, Getting around the Cyclades, and Travelling to the UK: What do I need to know? - to help you get the most out of your next trip.
Booking & Getting There
Johor Bahru to Kangar bus services, operated by Mayang Sari Express, arrive at Terminal Bukit Lagi station.
Johor Bahru to Kangar train services, operated by KTM Intercity, arrive at Arau station.
Yes, the driving distance between Johor Bahru to Kangar is 803 km. It takes approximately 8h 45m to drive from Johor Bahru to Kangar.
Book your Johor Bahru to Kangar bus tickets online with Omio and 12go.asia.
There are 357+ hotels available in Kangar.





