It's at Manerny Lake/Beach west from Enermy Town. There should be a gym leader there from another region. Talk to him and he'll give you Lava Surf.
(I couldn't find a really good Pokemon that could learn it though.)
Chat with our AI personalities
You can find Surf by going to Celestic Town and Visiting the cave in the middle of the Town. The Elder gives it to you when you examine the artwork of the 3 lake beings.
it depends on what version are you playing if the latest steven will give it to you.
There's no GBA Version for Platinum; it's only for DS.
Regardless, Surf is given to you by the elder of Celestic Town after defeating Cyrus at the ruins.
First you have to have surf and waterfall. then surf from sunnyshore city and get through victory road and your there.
You obtain hm03 Surf in the Celestic Town Shrine.
after you get the nationaldex you go to sadgeom town and surf down
find the waterfall and surf into it ( you dont need HM Waterfall)
you go up to the water and hit "a" and it will ask you if you want to use surf well i think i havent played it in a while