I am somewhat fan of RetroArch. I too had my first experiences rather dull by not understanding the main aspects of it, and semi-broken community editions for PS3 not making things easier. Once few main things like playlists, menu categorization logic and more clicked though, I have not gone back. Retroarch is very neat menu for retrogames, can add thumbnails to spice of presentation of games so you have more context than just a piece of text for every game in your collection. The great irony is that people talk about how hard it's to change settings but not end up in zone where the first setup is also the last setup you do until you change your mind. EVERYTHING can be set as a game, emulation core, content directory (so; "Per System") and so much more. A lot of things can be done by hand and look and feel even is extremely easy for user to tweak, like I done with my minimal theme extensions for retroarch by adding Collection playlists with appropriate icons. Problematic games if on PC or near one for your handheld console can be added with five mostly copy pasted lines to your existing playlist and what you "loose" in initial setup you gain with "leave and forget" of everything else.
And this all for windows. The excellent part is I can very easily copy aspects of these setups and rom collections with their playlists to other systems that is the main show of retroarch; Easy(?) all in one frontend and cores for PSVita, Hacked PS4 or PS3, Switch, Xboxes Wii U's and more all have official or good unofficial builds of RetroArch, and is the main reason why it is not a dolphin GUI for your windows operating system; Because you cannot make a Dolphin windows GUI if your target is to get an usable yet powerful emulation GUI that does not care if you run it on Linux, 3DS or PS3.
The GUI is that way because it is made for Console like emulation experience with added power features official emulation on consoles usually lack, and heck, all standalone emulators in general like universal shader systems and more.
The GUI can be frustrating if you want a PC window to do things but retroarch is meant to be 100% usable and configurable on any system with just a controller. It can be a frustrating start with but so is anything else new and different, like Linux to Windows users. But there is absolutely reason to the madness and once tamed it becomes actually a very clean thing. You absolutely can set it up into a beautifully themed PS3 or Switch like GUI filles with games hiding absolutely everything else away. Also it's search features and playlist separation help when you have a lot of ROM/Image files.

as a very frequent retroarch user, i 100% understand your frustrations. it's super annoying at first (and even once you get used to its weirdness it can still be a hassle to go through your filesystem using its dumb gui instead of just using file explorer...)
Retroarch is a frontend, it is GUI solution more than emulation solution (emulation comes from cores). It has it's file browser because what is the file explorer on switch? What is the File Explorer on Vita? PS3? Retroarch's clunky ass solution becomes far more clearer when it is extremely clear it is solution for every platform RetroArch can run on and there is thanks to those new handhelds likely thousands of those now. It is also kinda unclear to me are you even creating playlists?
I’ve seen this review about Retroarch it says that it’s made for gamers who likes to tinker more with the emulator than actually play on it.
Absolutely false. Retroarch INITIAL setup is more complicated than basic PC emulation, but if you set it up like you want it, and save the config it becomes extremely powerful. I do not need to tweak first and last line of a specific PC-Engine game every time I swap game, I can do it for every game once, set my playlists once, shaders once, and be done, instead of tweaking stuff every time I swap the game I am playing.
The biggest thing for me is the terrible file search system when you're adding games to it. It never works for me, I'll try using the manual custom scan option...
This was true for me too first time, but I was trying it with unofficial port on PS3 that likely lacked the ROM databases needed for auto detection of the files. Manual scan is though, pretty great just does not usually match the thumbnail database, and when you become someone like me just opening up uncompressed retroarch playlist and editing it with text editor becomes simple enough to add one of those weird romhacks you found on The Repo.
I only have multi emulators for cases the single emulator is not worth neither (Looking at you Saturn and Turbo Grafx CD), and i agree, my brother has Retro Arch in his PC and PS3.
Best thing about RetroArch is the support for many homebrewed consoles and handhelds, and
relative easy you can mirror stuff from one platform to another. RetroArch supposed to make this even easier with portable playlists feature that I liked until I learned it is just a playlist destroyer so I manually copy playlists from my PC to my console and use notepad++ to efficiently convert the windows formatting for vita or switch, etc. If you see the uncompressed playlist's format in your notepad++ it becomes also extremely easy to add games manually that way.
I have a love/hate relationship with RetroArch. My biggest issues are fucking around with keybindings that seem impossible to revert if you mess up and don't want to make everything default again, adding hacked games to your game list and having to redo them whenever you scan for new files...
I kinda dislike some keybind things, and not sure what button this feature is on keyboard, I use controllers with retroarch platform to platform. Square/(xbox)X/(nintendo)Y clears settings to empty state though. For hacked games, Repeating myself; just opening an uncompressed retroarch playlist file in your favorite notepad should make it clear and faster to add a romhack. Another thing retroarch does and I like is ability to use various rom patch formats kinda like subtitles for a game. Usually this is good only for translation and lighter improvement patches, but it also makes it easy to maintain them. Cannot be in ZIP/7z though, just the raw patch file with same name as the rom/zip/7z. Does not also work on all emulator cores for retroarch and limited to the 8-16 bit systems, up to GBA or so.
With all this though, I am almost willing to start a RetroArch QnA thread. At this point I used and tweaked my setups across five or seven consoles enough to answer to most problems people might have with RetroArch especially starting out problems. Advanced users might make me even pause before I answer.