To get from Penang to Kangar you can take a bus from Penang Sentral Butterworth or Sungai Nibong or you can take a train to Arau, then a short bus ride to Kangar on a MyBas service from just in front of the KTM Arau Railway Station.
The most direct way to travel to Kangar from Penang is to take a bus from Penang Sentral Bus Terminal in Butterworth to Kangar Bus Terminal (Terminal Bukit Lagi).
Buses operated by Plusliner and the Sri Maju Group both depart from Penang Sentral to Bukit Lagi Kangar.
The duration of the bus trip to Kangar is around 2 and a half hours.
Bus tickets from Penang Sentral to Kangar cost around 15 RM.
Another option is to take the bus from Sungai Nibong Bus Terminal on Penang Island to Kangar (if you are staying in Georgetown we would recommend taking the ferry to Butterworth and taking the bus from there).
Plusliner buses operate from here to Kangar.
To get to Sungai Nibong from Georgetown you will have to take a RapidPenang Bus or a taxi.
The bus trip from Sungai Nibong to Bukit Lagi in Kangar is a little longer from here and cost a little more with ticket prices at around 17 RM.
If you want to find the cheapest way to get from Penang to Kangar, travelling on a KTM Komuter train from Butterworth is the way to go.
From Butterworth Railway Station take a KTM Komuter train to Arau.
For the latest Komuter train timetable see the following link:
Once you arrive at Arau KTM train station, there is a bus stop near to the station exit where MyBas buses stop on their way to Kangar.
If you are lucky and don't have to wait for a bus at Arau train station for too long, it can take around the same time as taking a direct bus and save you a little money as the total cost of travelling this way is around 13 RM.