to get surf in heartgold/soulsilver you have to first beat the the rocket grunt inside the ecruteak dance theater. after talk to the old man and then he will give the HM.
Chat with our AI personalities
in Azalea town you can find and little pond with a rock waterfall. if you surf in it you can find poliwirls, which evolve into fighting types.
the pokemon gym is actually in seafoam islands, just surf to the right and enter the cave
When you find the Gold Teeth in the Kanto Safari Zone, give it to the man in the house all the way north from the Safari Zone. He will give you HM Surf for the Gold Teeth.then you will have your HM surf
You have to use surf off the right side of the island to get to the seafoam islands
You find the Gold Teeth in the Safari Zone in area 3 i think it is, near the house where you get HM03 Surf.