Waterfall is a project management methodology with sets of processes designed for environments where the future solution can be predicted and documented.
Agile frameworks are designed for complex environments where the future solution is unknown, so plans and solutions are iterated as more is known.
The differences in these approaches means that agile tends to be more successful than waterfall.