Bus takes 5-7 hours depending on which bus you take. Total trip time is 7-9 hours
Buses arrive at either Butterworth Bus Terminal (next to the ferry terminal and across the street from the train station), or Sungai Nibong bus station (on the Penang island itself, halfway between the airport and George Town). My recommendation is to take the bus to Butterworth, as it's a short 20-minute ferry ride away from George Town. From Sungai Nibong you need to either take a taxi or take a 1-hour bus to get to George Town
When you get to Butterworth, walk over to the Pangkalan Sultan Abdul Halim ferry terminal 200 meters from the bus terminal. Then take the 30-cent-USD public ferry to George Town. It's the same ferry you'd take if you take a train to Butterworth. Check the official site for its current ferry schedule and fare. The ride only takes 20 minutes and there are about 2 ships every hour.
12Go is the best website for looking up the schedule and booking buses