The colorful coral reefs, white sand beaches, together with perfect sunshine attract many tourists from around the world to the islands off the coast of Thailand every year.
There are hundreds of islands. Some of them are developed. Some of them are crowded. If you ask me the best island in Thailand, I would say it depends. It depends on both your taste and also the time that you are going to visit the island.
To make it easy to understand, I would group the islands in Thailand into 3 groups by their locations: Andaman Sea, Gulf of Thailand, and East of Bangkok.
The first group is the islands which are located on Andaman Sea side such as Similan Islands, Phi Phi Islands, and Tarutao Islands. The islands in the first group are famous for diving. If you expect to see colorful corals and variety kinds of fishes while diving or snorkeling, I recommend the islands in this group. The best months for diving are November to April.
The second group is the islands which are located on Gulf of Thailand side such as Koh Samui, Koh Tao, and Koh Nang Yuan. The islands in this group also have some good dive spots, but it is not as beautiful as the islands in the first group. The best months for diving are from April to October.
The third group is the islands which are located on the east of Bangkok. These islands are perfect for a weekend getaway trip from Bangkok because usually from Bangkok to these islands, it takes less time than to go to the islands in the first and second group. The most popular island in this group is Koh Samet (only three hours from Bangkok). Koh Chang and Koh Kood are also popular. You can expect to see white sand beaches in the islands in this group, but they do not have good sites for diving and snorkeling. Generally these islands have fewer visitors than the islands in the first and second group. If you do not plan to dive or snorkel and you want to stay on a peace and quiet island, the islands in this group could be your choice.
Hope this information helps.