It all depends on what you are trying to fill - the material and the nature of the gap or hole.
For large holes/gaps, or to build up a surface area quickly, I do prefer Bondo. I've learned a couple of tricks that make dealing with it easier:
Don't wait till it has completely hardened to start trimming it. Once it has started to go off, there will be a time where you can trim the excess away with a sharp knife. By minimizing the amount of area that you have to get rid of after its hardened, the less dust and sweat you'll need later.
You can use laquer thinner to smooth the edges of fresh Bondo in order to feather them. This has to be done while the Bondo is new, and it will affect the hardening time.
Of course, your surface needs to be able to handle the Bondo in the first place. Fiberglass and resin are fine. Styrene is OK (but be careful of heat buildup and the reaction to laquer thinner). Vinyl - wouldn't try it.
Spot or glazing putty works better for smaller dings and scratches. This stuff air dries without a catalyst. Can't build it up as thick as quickly as you can with Bondo. There will be some shrinkage as it dries, so plan on a couple of coats between sanding.
Milliput or the two part epoxy putty from Tamiya also have to be mixed. But they have the advantage of being less toxic than Bondo and can be smoothed into shape using water and not laquer thinner. They will take several hours to overnight to cure.
In all cases, I use coarse sandpaper and LOTS of water to get the basic shape down, proceeding with finer grades of wet/dry sandpaper (with LOTS of water) to get it smoothed and polished.
Go out and pick up this stuff and just spend an afternoon experimenting and see what you prefer. That's why I keep junk parts and excess trims from old kits - good base to experiment from.
Gene