In the main story, after you defeat your dad in the petalburg gym, wally's dad talks to you guys. After you go outside go to the house to the left of the gym and I think wally's dad gives it to you?
The most easiest way to get a Pokemon that can surf is get a Zizagoon,it can learn surf.
Surf to an island
Surf Right of Lilycove
Any water Pokemon besides magikarp and also linoone can learn surf as well.
surf
Try to surf you may find it
hach an egg or surf
You have to surf from LILYCOVE city to the right
You have to surf from either Mossdeep or Sootopolis.
He Doesnt.
You get surf for beating your dads gym.
Swampert, Hariyama, and Ludicolo.