How do you get gyarados in pokemon diamond?

Well, first you have to get a magikarp. There are a lot of ways you can evolve the magikarp into a gyrados, but I prefer to use the magikarp in battle, (but don't actually fight with it) and then switch with a powerful pokemon to defeat the trainer. If it's a really strong pokemon, your magikarp sould go to atleast lv. 7. There's also the daycare, where you can leave him and wait about a day for it to level up. It HAS to be level 20. That's why I don't recomend the daycare, beacause if you leave it there too long, It will stay the worst pokemon EVER. The It will be harder to level him up. Theres always the 3rd method, where you can use splash. Splash is pretty much useless, and it only takes away damage if it's in water or something like that. Anyway, the 4th method in my opinion is the best on, use an exp. share, then give it a rare candy. All of these could level it up. Sorry this is so long, There's just a lot of ways to catch a gyrados. You can ALSO use a master ball when its health is low. (NOTE: Its has to be a wild pokemon, or you will waste a perfectly rare pokeball) Sorry this took so long! I hope this helped!

-some guy that rocks :P you go fishing using a super rod