From Bulbapedia, the community-driven Pokémon encyclopedia.
For anyone who cares to hear the method I used to catch Latias in Pokémon Sapphire
Step 0: Seeing It for the First Time
I don't have too much info on this one, because there is no one easy way to find it. All I know is that I found it for the first time completely by accident on Route 124 and that Latias prefers being near the water. In fact, even after I had it in my Pokédex, I only ever found it on land once. My advice is surf all around routes 124-134.
Step 1: Setup
Step 2: Finding It AGAIN
After it was in my Pokédex, I had to find it again. Latias changes location everytime you change routes, Fly, Dive, etc. so it's just a matter of patience and luck. For me, Flying to Pacifidlog and trying the routes to the west and east worked fairly well. Surfing up and down between Routes 127, 128, and 129 was consistently the best, though.
Step 3: The Battle
(Steps 3 and 4 can be during the same battle if you trust your luck to Mirror Coat. I didn't.)
(Also, this step can be done however you like, I used a Golbat.)
Use any means to wear Latias down because all the damage you do to her never goes away! The only catch is that you have to use something that can keep her from running. SLEEP DOES NOT WORK! She will run even if she's asleep. Mean Look (move), Shadow Tag and Arena Trap (abilities) etc. are the only things that will keep her in check.
After her hp is as low as you can get it without killing her go to step 4.
Step 4: The Catch
This is the important part! Save before doing this!
When Latiass hp is in the red, you can start this step. Using my Wobbuffet, I just wasted time... on purpose. The reason is twofold:
- The Timer Ball works best (4x) after 30 turns.
- Latias needs to hurt itself.
To accomplish number 2, you have to let her run out of PP for all her moves. She will then Struggle and (due to Wobbuffet's high Defense), hurt herself a little at a time until her hp is between 1-20. So, I used Safeguard over and over and over until that was out of PP, then used Counter over and over and over (because both of Latias' damaging moves are Special), and healed whenever my Wobbuffet was dying (about 3-4 times). I used up all 5 Destiny Bonds before all she had left was Water Sport and it was safe to use Mirror Coat. As soon as she stared to struggle I started throwing Timer Balls. After 3 I had caught her!
If she kills herself by struggling, it's okay because you saved. You'll have to go back to step 2 and find her again. Hey, it's better than a dead Latias.
Epilogue: What Didn't Work
First strategy was to whittle down her health with Golbat (Using Mean Look first), then switching to another Pokémon and putting it to sleep right before it flew away. Then, I'd find it again and send out Wobbuffet to cover it with Shadow Tag while I threw Ultra Balls until it woke up. This took forever and didn't work: Don't try it.