3
You go to Canalave City which is west of Jubilife City. You will need surf to get there.
hearthome lets you use surf anyou get surf from the old lady in cesitown
4th
The fifth one in Hearthome City.
wake
You need the correct gym badge(s) for your Pokemon to use Surf out of battle.
Teach surf to a Pokemon and click the water and it will ask u to surf. You will need a certain gym badge,though.
The fifth badge is in Sootopolis City, you need Surf, Dive, and Whirlpool to get it
You need the soul badge that is obtained from defeating the Fuschia city gym leader Koga in order to use surf outside of battle.
the one you get from the gym in fuschia city.
You need 4 badges.
The Canalave City Gym is the 6th gym. To get there, you must Surf west from Jubilife City. Get HM03 Surf in Celestic Town.