you have to save a kimino girl FYI
after getting all the gym badges, go to Ecureteak City and fight the kimono girls in the dance theater. then go to goldenrod city and enter the radio tower. defeat all the team rocket enemies and the director will give you the rainbow wing. the kimono girls will also give you a bell. when you have the two items, go to the top of the bell tower and call for ho-oh. Then, Ho-Oh will come and you will be in battle with it. Good luck!
in goldenrod city
Once you get to pewter city a man somewhere in the city outside will give you the rainbow wing (how easy).
you show him the rainbow wing
After you beat the last team rocket executive on the observation deck, in the radio tower in goldenrod city, you get the rainbow wing from the Rainbow wing from the director.
Rainbow Wing and Clear Bell
You first have to beat team rocket, then the Kimono girls
If you're using heartgold, after beating the Pokemon league go to pewter city and an old man on a hill will give you the rainbow wing in soulsilver and the silver wing in heartgold.
you get the rainbow wing from the president in the radio tower along the lines of the story
Get the rainbow wing from the radio tower's director and then go to pro.Elm.
go t the radio tower and save the manager
you have to beat team rocket then the director gives you the rainbow wing
After you beat Archer (The neo team Rocket Leader) the directer gives it to you