What you have got to do is clear the psyduck blocking the path outside Solaceon Town and then make your way through the path towards Celestic Town then battle the galactic grunt blocking the cave enterence. Once you have go in and look at the markings at the back and a lady who you have to give the old charm to will give you surf.
To use it outside of battle you must defeat the gym leader Fantina.
You can find Pokemon in grass, caves, fishing or surfing.
fishing or surfing
By surfing or using a fishing rod
surfing, in tall grass, or in a cave.
you can find them whilst surfing in route 225 on pearl, i don't think you can get them on platinum.
Find a Pikachu on red or blue, find the surfing hm, teach it surf, trade pikachu with another pokemon, and you have a surfing pikachu.
fight water Pokemon ( by fishing or surfing)
you do not find dialga in Pokemon pearl
In The grass or surfing in the water.
or you could buy it at the rare Pokemon store
Trade with Pokemon Pearl or Pokemon Platinum
the best Pokemon you can catch in Pokemon pearl is heatran