There are 386 Pokémon in Emerald's Pokédex. Only 380 are needed to get the certificate from the Game Freak employee in Lilycove City: the ones that can be missed are Mew, Ho-Oh, Lugia, Celebi, Jirachi, and Deoxys. Ho-Oh and Lugia can be obtained from Colosseum and XD, respectively, but the others cannot without the use of events. This page focuses on getting the 382 Pokémon that aren't Mew, Celebi, Jirachi, and Deoxys.
In order to complete the Pokédex in Pokémon Emerald, you will need access to at minimum a copy of Pokémon LeafGreen, XD, and Colosseum or FireRed.
The following version-exclusive Pokémon have to be traded from another game:
LeafGreen is a required game because Slowpoke's evolutionary line can only be captured in LeafGreen. This means the player has access to all Pokémon that can be obtained in LeafGreen, accounting for most of the Kanto Pokédex and a handful of Johto Pokémon. The following list contains all FireRed exclusives that are not also naturally accessible in Emerald, and which game they can be obtained in.
Except for Ho-Oh and Lugia, all remaining Johto Pokémon can be caught directly in Emerald with its expanded Pokédex. Espeon and Umbreon, however, will need to be either evolved from an Eevee traded into Emerald, or traded from Colosseum or XD.
Several Pokémon are mutually exclusive, meaning that if you get one species, you cannot get at least one other species. The list of mutually exclusive species is below.
Note that only one Moon Stone can be obtained in Emerald, meaning Pokémon that evolve with the Moon Stone must be evolved in other games.
You will need access to three LeafGreen save files to get all three starters, and three Ruby, Sapphire, and/or Emerald save files to get all three Hoenn starters.
Twelve Pokémon evolve by trading: Alakazam, Machamp, Golem, Gengar, Politoed, Slowking, Kingdra, Steelix, Scizor, Porygon2, Huntail, and Gorebyss. The easiest way to get data for them is to trade them to another game and immediately trade the newly-evolved Pokémon back.
You will need two King's Rocks, one Dragon Scale, two Metal Coats, one Up-Grade, one Deepseatooth, and one Deepseascale to evolve Politoed, Slowking, Kingdra, Steelix, Scizor, Porygon2, Huntail, and Gorebyss. The player can only choose one of the Deepseatooth and Deepseascale per save file, meaning that you will either need two copies of Ruby, Sapphire, and/or Emerald, or two save files of Emerald, to get both.