Thailand has three seasons: rainy (June–mid-November), cool (late November–February), and hot (March–May). In central Thailand temperatures average 73°F to 90°F in the rainy season; 68°F to 86°F in the cool season; and 77°F to 95°F in the hot season. The north is a bit cooler, the south a bit hotter.
City sightseeing is okay during the rainy season: downpours lower the temperature, and storms, though fierce, don't last all day. But flooding can make rural areas inaccessible, and it's not a reliable time to plan a trek. The south gets wet by May, but the Gulf islands generally have decent weather until August. Cool-season weather, which is less humid, is perfect for everything: the beaches, Luang Prabang, Angkor Wat, trekking, or exploring Bangkok. But accommodation rates sometimes double, and rooms can be scarce in hot spots like Phuket. The northern nights are chilly in winter—generally in the 50s, but as low as freezing. Pollution in the north can reach dangerous levels toward the end of the dry season in March and April. By April you can find good hotel deals, if you can stand the heat, though some hotels in less touristy areas shut down for the hot season.