Продолжительные дожди, таяние снегов, прорыв плотин и водохранилищ. Наиболее эффективный способ борьбы с наводнениями на реках — регулирование речного стока путём создания водохранилищ. Они выравнивают сток реки, делая его больше летом и меньше весной, чем в его отсутствие. Для борьбы с наводнениями на морском берегу используются оградительные дамбы. Ещё одним способом борьбы с наводнениями является углубление перекатов и других мелей. Для защиты от наводнений при таянии льда на реках чаще всего применяют динамит (или иное взрывчатое вещество), взрываемый в определённых местах реки, который, уничтожая торосы, даёт возможность воде течь свободно и направить её по нужному направлению.