A lot depends on what you want to clean off the gel coat. Generally there are a number of products with a mild to moderate acid--such as oxalic acid which will remove the "Waterway smile"--tannins which stain the gel coat. Oxalic acid crystals to a saturated solution can be obtained at a big box hardware store or paint store. Starbrite, Davis, Mary Kate (on/off) all make similar cleaners at a greater price. More toxic are items such as snow bol toilet cleaner, which contains hydrochloric acid, or more concentrated Muiratic acid. My personal feeling is that these are harsh on the gel coat, but many professionals use them.
For buffing out the hull, and removing oxidation it depends on how bad it is. There are heavy duty rubbing compounds (abrasive) to Finessett it II from 3M, and I would also include the Colinite 920 cleaner in that category as an excellent product (followed by their fleet wax).
Then there are the combination products which have cleaner wax--and of those I like Meguiars Flagship cleaner wax. However there are a number of cheaper products which will also do the job.