Yes and no.
If you need specific command-line parameters (as is the case with Retroarch in order to indicate the core dll and possibly specifying a custom config) then you have to have an associated platform for it in your Retroarch emulator entry (and corresponding parameters). If, however, it's an emulator that doesn't require any special parameters and you're directing a compatible rom type to it, an associated platform isn't necessary.
For example, if I were to direct a C64 rom to Vice 64, and the only associated platform in my Vice 64 emulator entry was "SNES" or something, it would still work because it's a compatible rom and I don't have to specify a command line parameter for it to work. I'm just saying "I want you to direct this file [rom] at this executable [Vice 64]" and that's it.
For Retroarch you have to specify what core (only one) you want to use for the game you're about to play. So you're saying "If I use Retroarch to play an SNES game, use the BSNES core. If I use Retroarch to play a Genesis game, use the Genesis Plus GX core" and you're specifying the names of those as dlls in the command line parameter field for each of those associated platforms.