The additional problem is that RetroArch can only recognize a few popular formats, even if its cores support them. Does your collection span multiple systems with large ROMs (like the Playstation, Gamecube, or anything newer)? If so, the scanning can eat up your whole evening. Unfortunately, when dealing with extensive ROM collections, scanning a directory filled with ROMs to detect the games automatically can take a lot of time. That, though, defeats its very purpose, to be a frontend for hundreds of games on different systems. RetroArch’s game detection and playlist update features are great for playing around a dozen ROMs.
Note: If you want, download cores directly from the same directory and stick them in the “Cores” folder in your RetroArch.