Oils, greases, dry lubes, cleaners, penetrating oils, and rust preventors all have their place. In my opinion, unless you are going into an extreme environment, where exposure to salt spray or lots of fine desert dust is a problem, just about anything that seems suitable will probably work perfectly.
In my own experience, 90% of my needs are met by plain old Hoppes gun oil, for both lubrication and rust prevention. Synthetic motor oil is also a very fine lubricant, as you'd expect, and just about any good automotive grease will be a fine firearms grease as well. Ballistol is a cleaner that can be used with water, and is great for black powder guns, and for cleaning up after corrosive ammo. It's also very non-toxic and rated for use on food-processing machinery. Eezox is a splendid rust preventor. Kroil is great for soaking crud out of hard to reach places, and RemOil is good dry lube for hosing them down afterwards. I used CLP for a while, too, and it did everything I've asked of it as well.
The only product I hold in particular esteem is Ballistol, because it's non-toxic and it can be used on everything, including leather and wood.