Great question, the answer to your question is "It depends". It depends on what you are cleaning (deck, topsides, fiberglass, teak, etc.), where you use your boat (fresh water, tropics, coastal, etc), and what it is you are attempting to clean (general, rust streaks, seagull droppings, etc.).
All of that being said, 3M, Starbrite and Meguiar's all have lots of products from which to choose.