EmuLoader - (not my front-end, but the one I use

).
http://www.mameworld.net/emuloader/ (latest Version 4.7).
EmuLoader is written and maintained by Ciro Alfredo Consentino. Unfortunately, Ciro is retiring from Emulation, so 4.7 is probably the last version of this frontend, unless MAME significantly changes enough that the current version gets broken. Fortunately, 4.7 is the best of a long list of great versions of this FE.
EL has almost too many features to list, and I don't use all of them, so I'll hit the high points.
First, let me put in a disclaimer for some of our forum members - EL has been aptly described by other forum members as "MAME32 on STEROIDS!!!". Meaning it is a very Windowsy frontend. It also doesn't officially support resolutions less than 800x600, although I have run it at 640x480 with few problems. It does not have configurable keys, so if you don't have a mouse/trackball handy, and don't have an enter key and up/down arrow keys on your panel, you will have a tough time with it. The latest version does not support DOS MAME, and it is a Windows app, so can't run in pure DOS or Linux.
It does work very well for the way I use it - on a desktop PC with a HotRod-Style control panel. And it offers native support for the HotRod, X-Arcade, SlikStik, and Devastator II Control Panels.
It also features:
Support for MAME, Daphne, Zinc, AgeMAME (MAGE), and PinMAME (but not Visual Pinball, except maybe through
http://www.mameworld.net/tigerheli/pinloader/ but that's very out-of-date).
Games list with all features from MAME's -listinfo command and added support for catver, nplayers, and hi-score.dat files. List can be sorted on any category, categories can be hidden or shown in any order.
Games List has five views, including a tree view which shows clones under the parent game.
Ability to filter list on Parent/Clone, System, Available/Not Available or a combination of settings.
Ability to change background color and font of gameslist and color of Master, Clone, and Non-Working Games.
Ability to use a custom command line to launch games.
Ability to add games to a Favorites List for each user.
Ability to Parental Lock objectionable games.
Support for 14 image types per game (ten images per type), Image types can have any name, so typically, you might display Title Screens, Snapshots, Cabinets, Marquees, Control Panels, Flyers, Instruction Cards, PCB's, Control Panel Layouts, and five other categories. Each image type can have a different background color. Transparency is supported. PNG, GIF and JPG files are supported. Images can be scaled and several filtering (smoothing) effects are selectable.
Support for sound clips from each game, in either an intro or a continuous loop.
New version adds support for launching batch files instead of launching MAME directly (for launching Johnny5). Each game can have a different batch file if desired.
Random Game Preview feature plays a short sample of each game directly through MAME.
Probably lots of other things that I'm leaving out. . .