The last gym leader gives it to you, after you've beaten him
You can find Waterfall in the Dark Cave.
You can find the HM Waterfall in the Ice Path
you can find him in waterfall pond with HM dive or waterfall.
you will find waterfall on the 1st floor on ice path
You can find it in the Dark Cave.
in the cave of origin
Icefall cave.
you find it in the Ice Path
inside the cave of origin
You get the HM waterfall in the same cave you get Kyogre
You get HM Waterfall at the end of Route 18 on the strip of grass in Pokemon Black.
the girl at the very end of sunnyshore, she will give you the HM when you get the final gym badge