I've done a fair amount of Epoxy floors over the years in Industrial applications ( Hangars, Factories, HD Equipment Shops ). Like all paint applications it comes down to slab prep. and quality of Epoxy. A really smooth concrete floor requires a little " roughing up " ( ie Shot-blasting ) to provide a grip for the Epoxy. The Epoxy needs to be a couple of coats thick. I think the solvent based ones are better than the water based.
I think for a home garage, Epoxy is a little exotic. Even good ones will chip from impact. The finish is slippery, particularily with water or oil on top. You can get various additives for the top coat to give you some grip, but then that takes away from the smooth finish appeal. I think I would go with a quality floor paint, with good prep.