What you'll need:

Wi-Fi.
Link Cables.
Nintedo DS Lite and/or original nintendo DS.
Pokemon Blue/Red/Yellow (first generation)
Pokemon Crystal/Silver/Gold (second generation)
Pokemon Firered/LeafGreen

A Nintendo DS that can connect to the internet.
A Nintendo 3DS...
Two Gameboy Advanced SP's.

How to do it from First Gen/Second Gen to Firered/leafgreen:

First, play-through Gold/Silver/Crystal or Yellow/Red/Blue.

Trade via-link-cable and GBA-SP to Firered/Leafgreen whatever Pokemon you caught in Yellow/Blue/Red Gold/Silver/Crystal etc.

Then, to migrate your Pokemon to your DS games such as Diamond/Pearl/Platinum/HG/SS... You need to enter the Pokemon HeartGold/SoulSilver and/or Pokemon Diamond/Pearl/Platinum game
into the DS slot and then enter the Firered/Leafgreen games into the GBA slot in your ORIGINAL NINTENDO DS OR NINTENDO DS LITE.

Then, take your heartgold/soulsilver/diamond/pearl/platinum and with your 3DS and DS Lite connect them to your Pokemon Black and White or Black and White 2

And eventually you can trade the Pokemon!

+++++

If you need any help with this then let me know! Currently, I can't do any of this because I need to get a DS Lite and link cables, and I need to go to an area that's Wi-Fi has a WEP code, because my Pokemon Heartgold won't connect to my internet security system.

Also, I apologize if I hadn't posted this in the right topic or not if so, please move it to the right one?