A slicing program takes a 3d model and translates it into G-code. Its like a building designer passing drawings to a engineer so they can make plans.
The host program sends all the gcode to the printer.
At the moment there are 2 (as far as I can tell) biggies; SFACT -the new SkeinForge and Slic3r.
I've personally only tried Slic3r which works very well.
RichRap has an excellent setup and usage tutorial (link) on his blog. He goes through pretty much every setting as well as showing the difference changing the settings can make.
I've heard very good things would SFACT and its parent SkeinForge however I've resisted the urge to give them a real it as I've heard its a pain in the neck to get up and running.
Here a quick comparison of the interfaces.
Yes that's 4 tabs in Slic3r and over 30 in SFACT.
Unlike slicing software there are quite a few different hosting applications out there all pretty popular. There's ReplicatorG, PrintRun (pronterface), Repetiter and RedSnapper just to name a few.
So far I've used only PrintRun and Repetiter.
I found Printrun very easy to setup and run. The windows file even has a nice .exe file to run which saves downloading and installing the separate Python packages.
The interface is simple and very straight to the point, ideal for testing and calibration.
From the little I've used Repetiter it feels like a more grown up version of PrintRun. There are more options and a more adult interface (no colour coded axis or nice control pad).
One big advantage Repetiter has is the gcode viewer.
Like SFACT I do plan on taking the time to learn the interface as options, but for the moment I'm just using Repetiter to double check my gcode.
As I get to know the programs more and use different programs I'll hopefully write mini-reviews or setup guides.