RetroArch is a program that basically exists to manage emulators in one interface. It is the official front-end of Libretro, a library that allows emulators to be packaged as libraries. It isn't the only front-end to Libretro; also available are EmulationStation and GNOME Games. However, Retroarch provides more features than either of them.
For example, RetroArch can manage an endless number of controllers and shaders, and has its own set of content made specifically for Libretro, which can be downloaded from the interface. Retroarch has nearly every feature an emulator needs, and some emulators don't need, set up for a number of emulators.
Not only does RetroArch have its own games, it has an operating system which uses RetroArch to turn a small computer into a gaming console. This is Lakka, and you'll be using it to create your own game console.
You'll need these items, many of which can be found in kits like the Canakit:
Raspberry Pi 3 or above: The ideal computer for Lakka is the Raspberry Pi, which is not only small but cheap (only $15-35) and easy-to-use. Older versions of the Pi will not be able to emulate games for the Playstation or N64, which are more resource-intensive.
16GB+ microSD card: The "hard disk" of the Raspberry Pi.
A USB keyboard: A backup if controllers don't work.
A USB controller (PS4, X360, Nintendo Switch, some others; optional), a microUSB power adapter, an HDMI cable, and a, HDMI display.
Once Etcher is done flashing the SD card, eject/unmount it and plug it in to the Raspberry Pi. Plug the Raspberry Pi into a display using HDMI and into a wall outlet using the power adapter.
You should see a rainbow screen, followed by the logo. If it stays at the rainbow screen for over a minute you have used a corrupted disk image.
Once Lakka boots up, plug in a keyboard or controller, and use arrow keys/D-pad to scroll to "Restart" so that it can perform some important actions.
Once it reboots, go to Settings -> Wi-Fi and choose your WiFi network, then enter the password to log in to WiFi. You may wish to go to Content Downloader -> NXEngine and select the first item to download the indie classic Cave Story, then add it to the menu by going to the "+" menu, selecting Scan Directory -> Downloads -> Scan This Directory. Also, if you want to transfer files to the Pi, read these instructions.
You might have issues with the controller; I personally recommend getting a USB keyboard as backup for this reason. If your controller's D-Pad is moving through the menu too fast or the buttons are set improperly, unplug it, then plug in your USB keyboard and navigate to Settings -> Input -> Input User 1 Binds. Then move to User 1 Bind All without pressing enter. Plug in your controller now and press enter. You can now set the controller properly.