If you are taking the route northbound through Peninsular Malaysia, a popular route is to first visit Penang Island, then continue on to Langkawi Island.
To get from Penang to Langkawi overland, you have a choice of:
1) taking a direct ferry from Georgetown to Kuah ferry terminal on Langkawi.
2) heading back to the mainland and taking a cheap KTM Komuter Train from Butterworth (Penang Sentral) to either Alor Setar or Arau, where you can then transfer to the nearby ferry ports (this way involves a much shorter boat trip).
3) taking a bus from Butterworth to Alor Setar (for Kuala Kedah) or a bus direct from Butterworth to Kuala Perlis.
If you want to take the direct boat from Georgetown, the ferry terminal is located in the north-east corner of the city, at Swettenham Pier (look out for the Queen Victoria Memorial Clock Tower and you will see all the ferry ticket offices and the entrance to Swettenham Pier just behind the tower along the road the runs beside Fort Cornwallis).
There are a couple of boats a day that leave for Langkawi taking around two and a half to three hours to get to the Kuah port in Langkawi.
If you want the cheapest way to travel from Penang to Langkawi and don't mind a slightly longer journey, you have the option of heading back over to the mainland, then taking one of the very cheap KTM Komuter Trains to either Alor Setar or Arau.
The first step is take the 15 minute ferry boat from Penang to Butterworth >
From Butterworth you can then take a KTM Komuter Train to Alor Setar or Arau.
A cheap option is to go to Alor Setar Train Station, then you can take a cheap local bus to the ferry terminal at Kuala Kedah.
Boats from Kuala Kedah depart every hour or two during the day.
For a slightly shorter ferry trip, you can stay on the train for a while longer and get off in Arau.
From Arau Train Station, you will have to take a taxi or bus via Kangar to the ferry terminal at Kuala Perlis.
The ferry from here also departs every hour or two and is about 15 minutes quicker and costs slightly less than from K. Kedah.
Another cheap way to travel from Penang to Langkawi is to take a bus from Butterworth to Kuala Perlis.
This bus takes you to the Bus Terminal at Kuala Perlis, located just a couple of minutes walk away from the Kuala Perlis Ferry Terminal.
We would advise you not to just turn up at Butterworth Bus Terminal expecting to get a ticket on these buses, as they originate from Kuala Lumpur and are a very popular with people travelling from KL to Langkawi, so are often full.
Another option is to take the bus from Butterworth to Alor Setar, then take a local bus to Kuala Kedah.
However, it would be quicker and cheaper to take a Komuter Train (see above).
Both Penang Island and Langkawi Island have their own airports, with the budget airlines, Air Asia and Firefly operating a number of daily flights.
The flight from PEN to LGK takes only 40 minutes and if you book in advance, you can often get some good, cheap deals.