Map from Google - Nepal

In Nepal the climate varies mainly according to altitude: it goes from the sub-tropical climate with a rainy season on the southern flat strip, to the temperate climate of the lower mountains, to the cold mountain climate of the Himalayas.
Rainfall is abundant in the period of the summer monsoon (June to early October), even though it penetrates with difficulty in some sheltered inland valleys and in the northern slopes. On the southern slopes, at equal altitude the east is rainier than the west.

In the thin southern plains, a region known as Terai, the climate is that of the Indo-Gangetic plain that is found in northern India. It's sunny and mild in winter, with January averages around 15 °C, pleasantly warm during the day but cool at night, sometimes even cold. In March, the temperature rises considerably and it begins to get hot, while from April to June the heat is scorching, with highs easily exceeding 40 °C, but which may even touch 45 °C.
Here are the average temperatures of Nepalganj (or Nepalgunj).
Average temperatures - Nepalganj
Min (°C)8101520252626252520138
Max (°C)222531373837333232322823

In June, the summer monsoon arrives, characterized by heavy rains, downpours and thunderstorms. The monsoon arrives first in the east, on early June, while in the west it comes in the middle of the month or so. The temperature decreases, the maximum reaching around 32 °C in July and August, but the humidity increases, making the heat muggy. The rains are intense especially in July and August, when they exceed 300 millimetres per month, but in certain areas at the foot of the mountains, especially in the east of the country, they can exceed 600 mm per month.
Here is the average precipitation in Nepalganj.
Average precipitation - Nepalganj
Prec. (mm)2025983015531032521540781152

The monsoon start to withdraw from early October in the west, and about a week later in the east. The weather returns sunny, and even though October is still a hot month, the humidity decreases and the temperature at night becomes a bit cooler.
In the easternmost part of the flat area (see Biratnagar) the heating in the period from March to June is limited, so that the average maximum temperature reaches 33/34 °C in April and May. Here, already in the second half of April, the first afternoon thunderstorms occur prior to the arrival of the monsoon itself.
Above 800/1,000 metres, the climate is temperate, while the rainfall pattern remains the same. In Pokhara, at 800 metres, the average goes from 13 °C in January to 25.5 °C in July.
Average temperatures - Pokhara
Min (°C)661215182021212017117
Max (°C)192126303030292928262320

Here the rains are plentiful, because the city is located at the foot of the Annapurna Range, and therefore the summer monsoon is particularly intense, because the southern currents are forced to rise when they encounter the mountain slopes: the rainfall amounts to 3,900 mm per year, including even 940 mm in July and 965 mm in August. This is the rainiest city of Nepal. Even here there is little rain in winter, but there can be some atmospheric instability already in spring, with significant thunderstorms in April and May. Here is the average precipitation.
Average precipitation - Pokhara
Prec. (mm)25356013036067094086564014020203900

In the capital Kathmandu, at 1,400 metres above sea level, the climate is mild. The average January temperature is around 10 °C, but the temperature range is high, because it gets cold at night, while during the day the sun makes the air mild. Summer is hot, with highs around 27/29 °C for a long period, from April to September. Here are the average temperatures.
Average temperatures - Kathmandu
Min (°C)2481116192020181373
Max (°C)182024272828282827262319

The annual rainfall amounts to 1,400 mm, of which 115 mm already in May (due to the thunderstorms that precede the monsoon), even 360 mm in July, which is the rainiest month, still 185 mm in September, and 60 mm in October, concentrated in the first part of the month, before the monsoon withdraws. During the monsoon period, the sky is often cloudy, so it's difficult to see the highest mountains. Here is the average precipitation.
Average precipitation - Kathmandu
Prec. (mm)151530551152553603151856010151425


Going up in altitude, temperature and rainfall vary not only with altitude, but also with slope exposure, however, since most of the mountains of Nepal are situated on the southern slopes, the temperature is relatively mild even at high altitudes. Around 2,000 metres, the average temperature in January is 4/5 °C, while it drops below freezing above 2,800 metres. Above 3,600 metres, the subarctic climate zone begins, that is, where the average temperature of the warmest month does not exceed 10 °C.
In inland areas, the summer monsoon penetrates with more difficulty, so much so that precipitation doesn't go above 100/150 mm per month in the rainiest months, which are even here July and August. Some particularly sheltered inland valleys receive still less rain, and have a desert or semi-desert landscape, such as the kingdom of Mustang, which is located in an arid valley north of Annapurna and the Dhaulagiri Massif.
In Nepal, some of the highest mountains on Earth are found: Mount Everest, the highest, with its 8,848 metres, on the border with China; Kanchenjunga, the third highest mountain in the world, 8,586 metres high, on the border with the Indian state of Sikkim; Lhotse, the fourth, 8,516 metres high, located just 3 kilometres south-east of Everest and also on the border with China; Makalu, the fifth, 8,481 metres high, 20 km south-east of Evererst and still on the border with China; Cho Oyu, the sixth, 8,201 metres high, 28 km north-west of Everest and still on the border with China; while in the interior of Nepal, we find Dhaulagiri, the seventh, 8,167 m high; Manaslu, the eighth, 8,156 m high, and Annapurna, the ninth, 8,091 m high.
In the base camp of Everest, in the Khumbu glacier, 5,300 metres above sea level, only 450 mm of rain or snow per year fall. Here the average temperature is around -18 °C in January and -2 °C in July, while at the Everest summit it's around -36 °C in January and -18 °C in July. On the highest peaks of Nepal, terrible wind storms occur, especially in winter.

When to go

The best time to visit Nepal in its entirety runs from November to February, to avoid the summer monsoon but also the heat on the plains, which is intense from March to October.
To visit Kathmandu and especially for trekking in the mountains, you may choose spring and autumn, especially from March to April, and from mid-October to mid-November, the periods in which it is possible to avoid the winter cold as well as the mud due to summer rains. Autumn is the best, because it is the least rainy and the atmosphere is particularly transparent, which allows to watch the snow-capped mountains at great distances.
In general, the expeditions for Everest and the highest peaks are organized into two periods, from May 20 to June 5, and from October 1 to 20, when the temperature on the summit of Everest is around -25/-27 °C, and it's possible to take advantage of the only two benevolent periods between the cloudiness and the snowfalls which occur in summer, and the storms which occur in winter. However, in the high mountains the weather can vary greatly depending on meteorological situation, so it's better to check the forecast for the following days, and in any case, to rely on expert guides.

What to pack

In winter: in the plains, spring/autumn clothes, light for the day, jacket and sweater for the evening. In Kathmandu and Pokhara, spring/autumn clothes for the day, warm for the evening, jacket, hat, scarf, sunglasses, sunscreen. Above 2,000 metres, warm winter clothes, down jacket, hiking shoes. At higher altitudes, outfit for the big chill, synthetic thermal long underwear, gloves, parka, hat, scarf.
In summer: for the plains, lightweight clothing of natural fibres, light raincoat or umbrella. In Kathmandu and Pokhara, light clothing, a sweatshirt for the evening, raincoat or umbrella. Above 2,000 metres, spring/autumn clothes, sweater and jacket for the evening. At the highest altitudes, fleece, wind jacket, down jacket, hat, gloves, scarf. For overnight stays outdoors, sleeping bag, warm jacket.