In pokemon Gold, Silver, Crystal, Heart Gold and Soul Silver, you can catch Red Gyarados in the lake of rage. Before entering the lake of rage, save the game. This is because you only have one chance of catching it. Right after catching it, you need to fight the team rocket in team rocket HQ in Mahogany town. But after catching the Red Gyarados, you can get the red scale. I recommend you to use a good pokeball, either a dive ball or a ultra ball. Because this is your only chance! Well, unless, you catch a shiny Magikarp and evolve it.