I am building a "Buffet" and I would like to know the best method of finishing the top. It needs to be very waterproof. Thanks for the help.
If you want literally waterproof — any amount of water can be left on the surface without concern — then you probably need to use a solid plastic or resin coating, such as a pour-on finish sold for bartops or an epoxy coating system (often sold as a marine finish). Note that these create a solid, plastic coating on the surface of the wood and some people are very much not fan of how that looks. To give an idea of just how thick these can be only one coat can be equivalent to maybe 20 coats of varnish, so thick, and very glossy*.
If you just need very good water-resistance as on a table or counter that will get a lot of sweaty glasses in the summer, will be wiped down regularly with a wet cloth etc. then varnish can provide sufficient protection. Any decent polyurethane varnish will work for this, both oil-based and waterbased types, although the former usually provide greater protection from water.
See this previous Answer for a little more detail, Protecting against water damage
Not sure if this is a primary concern but thought it worth mentioning that thick plastic/resin coatings are essentially unrepairable. Being supremely tough, down the road if you get a scorch from a hot pan being put on the surface, a crack from something heavy being dropped on it or discolouration (epoxies and some resins tend to yellow eventually from light exposure) it is extremely difficult to remove the finish and get down to bare wood to prepare for refinishing. It's so difficult in fact that often people will throw the top away and build a new one rather than face the work.
Varnish isn't nearly as tough or durable (it can still take quite a beating, just not in the same league) but it can be removed far more easily. So refinishing in due course is not only possible it's commonplace. Even a very substantial varnish application such as six full-strength coats applied by brush or roller could be taken off a counter in under an hour, less than 10 minutes with the right plane or scraping tool.
*The gloss level can be taken down fairly easily using hand methods after the finish has cured (e.g. rubbing down with steel wool or Scotch-Brite) but it won't reduce the apparent thickness of the coating.