If you are planning to travel from Bangkok to Penang, you have a choice of transport, with the fastest way being flying (less than two hours), or by taking an overnight sleeper train from Hualamphong to Padang Besar, or a bus via Hat Yai.
If you have plenty of time, you can also making a series of ferry journeys down the west coast of Thailand, to Langkawi, then take a boat to Penang.
If you want to fly between Bangkok and Penang you can either take a fairly expensive Thai Airways flight from Suvarnabhumi Airport (BKK) to Penang International Airport (PEN), or you can use the budget carrier Air Asia, who fly from Don Mueang (DMK).
If you book in advance on Air Asia you can get some really good deals (sometimes).
If you don't want to fly, the next best option is to take the train.
There is an overnight, 2nd Class sleeper train service from Bangkok to Padang Besar on the Thailand / Malaysia border.
From the border you then take a regular KTM Komuter train (commuter) from Padang Besar to Butterworth (located on the mainland just across from Georgetown on Penang Island).
Arriving at Butterworth Railway Station, you then have a short walk to the jetty, where boats leave for Georgetown (a 15 minute boat trip).
If you want the cheapest way to travel from Bangkok to Penang, you will have to take one of the overnight trains from Bangkok to Hat Yai.
Travel on these trains gives you the option of cheaper sleeping berths, or if you really want to save money, you can travel in the really cheap 3rd Class seats on some trains.
From Hat Yai you then have to travel to the border at Padang Besar by either train, bus or minivan.
You then connect to the KTM Komuter trains to Butterworth.
You can also take a direct minivan from Hat Yai to Penang, but it is much cheaper to head to the border and catch the commuter train.
There are no direct bus services to Penang from Bangkok, so you will first have to travel by bus to Hat Yai.
From Hat Yai bus station you can then either:
Take a minivan to the border at Padang Besar (50 Baht), then take the train (the much cheaper option).
Take a minivan from Hat Yai bus station to Penang (350 - 400 Baht).
During the high season (November to March) it is possible to island hop to Penang from Thailand's west coast islands.
To enter Malaysia by boat, you will have to take a ferry from Koh Lipe to Langkawi or from the mainland at Satun to Langkawi.
From Langakwi you can then take a ferry to Penang, or head back to the mainland by ferry, and take a train or bus to Butterworth.