An average project experience around 25% change in requirements. Hence waterfall is highly unsuited for the majority of projects, since it does not handle requirement changes well.
However, in a few areas such as aeroplane control software, space shuttle software and similar, waterfall is indeed the optimal development process.
Different projects DO require different development processes. That's not wishy washy, it's the reality of software engineering.
Mindlessly applying your favourite development process to all projects, be it waterfall, scrum, evolutionary prototyping, spiral development or what have you, will very likely result in failure, if the process does not fit the project.