When to go?

This depends on what you intend to do and where, but generally speaking October to early December or March to early May are the best times to visit Nepal. This is largely to do with the climate see Climate/Weather.

The post-monsoon months of October to early December have crystal clear mountain views with excellent weather, the most moderate temperatures and the least rain. December to February is colder, too much so at higher altitudes. March to the beginning of May is the best season for most wild life, including rhododendron, the temperatures are moderate, though the views are more hazy than in autumn and there is more chance of periodic rain. Later in May can start to get a bit hot, especially at lower altitudes, while June to September is both hot and wet in most areas.

Kayaking and rafting should be avoided during the monsoon (June to September), except maybe on the Trisuli or Seti rivers, and generally speaking the kayaking and rafting season is from mid-October to mid-May.

Paragliding is available any time from late September to late May, though early October to early March are the recommended times.

The Safari Parks are best from December to March, though they are doable in mid/late October, November and April. The Terai remains hot throughout the year, but December to February are the least hot. The Terai is best avoided during the monsoon (June to September).

For the best time to trek see here.