Map from Google - Lebanon

Lebanon has a Mediterranean climate on the coast, with mild and rainy winters and hot and sunny summers, while the inland areas are more continental, with relatively cold winters and torrid summers.
The rains occur only between October and April, and sometimes in May, and are more abundant in winter: therefore they follow a Mediterranean pattern. This pattern is followed even in inland areas, although the rainfall become more scarce in the eastern part of the country.
From June to September it almost never rains, and the sun shines everywhere.

On the Lebanese coast, where the capital Beirut and other cities such as Tripoli and Tyre are found, the climate is typically Mediterranean. Winters are mild: the average temperature in January is about 13 °C, but they are also rainy, with particularly abundant rains in December and January; summers are constantly sunny, hot and muggy but tempered by breezes. The maximum temperatures in summer are around 28/29 °C on average in July and August.
Here are the average temperatures of Beirut.
Average temperatures - Beirut
BeirutJanFebMarAprMayJunJulAugSepOctNovDec
BeirutJFMAMJJASOND
Min (°C)101011141720222322201511
Max (°C)161618212326282928262217

In the average year, in Beirut 800 mm of rain fall, with heavy rainfalls in winter. Here is the average precipitation.
Average precipitation - Beirut
BeirutJanFebMarAprMayJunJulAugSepOctNovDecYear
BeirutJFMAMJJASONDY
Prec. (mm)180150905010000040110170800
Days151310740002691480

The sea is warm enough for swimming from June to October, as we can see in the following table.
Sea temperature - Beirut
BeirutJanFebMarAprMayJunJulAugSepOctNovDec
BeirutJFMAMJJASOND
Sea (°C)181717182124262727252220

On the Mount Lebanon range, the winter rains are even more abundant than on the coast on the western slope, exposed to maritime currents which are forced to rise and condense in clouds. With increasing altitude, the temperature naturally decreases, so that in winter these mountains experience heavy snowfalls, and in the worst winters a large amount of snow can fall. At 2,000 metres above sea level, the average temperature in January is about 0 °C, as we can see from the average temperatures of Ariz.
Average temperatures - Ariz
ArizJanFebMarAprMayJunJulAugSepOctNovDec
ArizJFMAMJJASOND
Min (°C)-2-3-11610151311630
Max (°C)2259152022221915126

Mount Lebanon is the highest chain in the country, culminating in Qurnat as Sawda', 3,087 metres high.
In the Bekaa Valley, at an altitude ranging between 900 to 1,200 metres, the climate gets colder in winter, also due to the altitude, and hot in summer, despite the altitude. The rains, still concentrated in the winter months, are a bit less abundant than on the coast or the western slope, but they are nonetheless significant, around 100/150 mm from December to February.
Here is average precipitation in Ksara, at 900 metres above sea level.
Average precipitation - Ksara
KsaraJanFebMarAprMayJunJulAugSepOctNovDecYear
KsaraJFMAMJJASONDY
Prec. (mm)15514070401410011960125625
Days151210520001371267

Given the relatively low temperatures, during cold spells that may affect Lebanon and the Middle East in winter, abundant snowfalls may occur, followed by frost. The average January temperature in Baalbek, at 1,200 metres above sea level, is 4 °C, while at 900/1,000 metres, it rises to 5/6 °C. In summer, the days are hot, around 30 °C in Baalbek, a few degrees above in the cities located at a lower altitude, around 900 metres, and sometimes they can be torrid, but the nights are still quite cool, because of the altitude (see Ksara).
Average temperatures - Ksara
KsaraJanFebMarAprMayJunJulAugSepOctNovDec
KsaraJFMAMJJASOND
Min (°C)224710131516131073
Max (°C)121215212629323330251913

In the eastern part of the country, we find the Anti-Lebanon mountain range, which is cold in the winter but more arid, especially in the northern part, while in the south, near Mount Hermon, during winter heavy snowfalls may occur.
In spring, and more rarely in autumn, Lebanon may be affected by a strong wind coming from the desert, called Khamsin, which can cause sudden increases in temperature and bring sandstorms.
Baalbek

When to go

The best times to visit Lebanon are spring and autumn: the coastal cities, including Beirut, and the Bekaa Valley as well, can be visited in April-May and September-October, bearing in mind that in the Bekaa Valley, in April and October the nights are very cool or even cold.
For a beach holiday, you can go from mid-May to mid-October, although as we have seen the sea reaches 24 °C only in June.

What to pack

In winter: for Beirut and the coast, spring/autumn clothes, sweater and jacket, raincoat or umbrella. For the Bekaa Valley: warm clothes, jacket, hat, umbrella or raincoat, hiking shoes; for the mountain tops, mountain clothing.
In summer: for Beirut and the coast, light clothing, a light sweatshirt for the evening. For the Bekaa Valley, light clothes, sun hat, sweatshirt or sweater for the evening, scarf, hiking shoes, sleeping bag for overnight stays outdoors. For the mountain tops, a jacket and a sweatshirt.