There is a main bus terminal from Phuket town to Bangkok. Although Phuket is an island - there is a bridge that connects them to the mainland.
The bus ride is 12 hours. Price is dependant on time of day you travel and ofcourse if you travel normal or VIP. THe most expensive is to travel overnight costing 720 baht (15 EUR) per person for the normal service. Includes air-co, fairly decent reclining seats, tv (in THAI), dinner, snacks, bottled water, juice, coffee, blankets. Excellent really. The VIP bus is 1200 baht and has better food, wider seasts, more incline.
The bus runs all day long and you don't need to pre-book. The longest you will wait is 45 min as there are many bus companies and it ends up that there is a bus every 30 min.
However from the Israeli travel agent in Bangkok tickets cost only 450 baht to get to Phuket. You can also get a return ticket. So that is cheaper but I don't have any clue about the service.
The bus to Chiang Mai from Bangkok also at the Israeli travel agents is 250 baht per person. Will let you know how good the service is! Bus is at 18:00 daily.
THe Israeli travel place is great - has a resturant with western food (which after more than a month here we needed!), cheap ways to get to other destinations, free internet, great bathrooms, postal services, luggage storage. This is on the street just off Koh San road.
Anyway Ciao for now!