Dam and reservoirs are constructed across a river valley for water storage and to hold back the water flow. Major difference between a dam and barrage is that, Dam built for water storage the lake is called as reservoirs and barrage build to divert the river water.
A Dam is a massive structure that hold the water flow of the river through spillways. The dams are primarily used to save water and generate hydro power.
Reservoir is a man made lake created by Dam that holds the back water,primarily used for storage purpose. Indira Sagar reservoirs in Madhya Pradesh is the largest reservoirs in India.
Barrage is a type of small dam with large gates,build to divert the river water for irrigation systems. The barrage also carries road bridge,gas pipeline or a train link.