This working methodology that I use in QGIS allows me to identify the areas at risk of flooding in a simple and fast way.
Shapefile “Maximum_flood_quota”
I create a polyline shapefile by inserting a numeric field “Quota” in the table. I draw the polylines and in “Quota” I assign the values of the maximum flood of the rivers.
DEM “Maximum_flood_quota”
I create the DTM of the maximum flood of rivers.
Processing Toolbox => TIN interpolation
DEM “Quota_difference”
I create the DEM height analysis by making the difference between the DTM resolution 5 mt of the area and the DEM “Maximum_flood_quota” previously created.
Raster => Raster Calculator
The areas with negative height will be those subject to flooding.
DEM “Flooded_areas”
To obtain the DEM of flooded areas only, from the DEM “Quota_difference” I exclude positive values by putting values =>0 as No data values.
Example: DEM classification and overlay on Google Satellite
Calculate the flooded volume
Processing Toolbox => Raster surface volume