The magnitude of flood impacts is regulated not only by hydrometeorological hazard and exposure, but also flood protection levels (primarily from structural flood defenses) and vulnerability (relative loss at given intensity of hazard). Here, we infer the variation of protection levels and vulnerability from data on historical riverine, coastal, and compound floods and associated impacts obtained from the HANZE database, in 42 European countries over the period 1950–2020. We contrast actual damaging floods, which imply flood protection was locally inadequate, with modelled potential floods, i.e. events that were hydrologically extreme but did not lead to significant impacts, which imply that flood protection was sufficient to prevent losses. Further, we compare the reported magnitude of impacts (fatalities, population affected, and economic losses) with potential impacts computed with depth-damage functions. We finally derive the spatial and temporal drivers of both flood protection and vulnerability through a multivariate statistical analysis. We apply vine-copulas to derive the best predictors out of a set of candidate variables, including hydrological parameters of floods, exposure to floods, socioeconomic development, and governance indicators. Our results show that riverine flood protection levels are much lower than assumed in previous pan-European studies. North-western Europe is shown to have better riverine protection than the south and east, while the divide is not so clear for coastal protection. By contrast, many parts of western Europe have relatively high vulnerability, with lowest value observed in central and northern Europe. Still, a strong decline in flood vulnerability over time is also observed for all three indicators of relative losses, suggesting improved flood adaptation. Flood protection levels have also improved since 1950, particularly for coastal floods.