The front end is a pretty interface for the emulator.
Back in the day MAME was just command line. So if you wanted to run it, you'd type
"mame mslug -joystick -foo 800 -bar 600 blah blah"
Ugly! So frontends were invented, nice graphical interfaces which would type it all in for you. They just make running the emulator (and sometimes configuring it) easy.