There are a few different options when it comes to epoxy for concrete floors. The different options are not all created equal so it's important to understand the differences. For example, consumes can buy a water-based DIY epoxy from Rustoleum that is only 55% solids. This is going to be drastically different than a commercial-grade 100% epoxy. We grind off a lot of DIY floors after about 3 years because they start peeling up. Most Rustoleum applications are single coats with a 55% solids product that just won't last. You can see an example on our Job Gallery
Epoxy dries in 8-12 hours and should be re-coated within 24 hours, otherwise you should sand the previous coat and remove any sanding dust. Because of this, multiple coat applications require 2-4 days to apply the coatings and another few days for it all to dry and put back into service. Epoxy is good for when the concrete slab is not subject to moisture and you want a metallic design. It can also be a budget solution as the first 2 coats in a vinyl flake with full coverage in a garage, but we don't recommend it for the top coat. Why? Epoxy can yellow in UV light and peel up from hot tires in the summer time. Polyaspartic or Polyurea will make for a harder top surface to combat the peeling issue. Epoxy is typically applied at temperatures over 55 degrees, so winter time applications can be a concern.
We would always recommend using a primer coat for epoxy, polyaspartic or polyurea. You want that first coat to be 60%-70% solids, meaning 30%-40% solvent, to reduce the viscosity to allow the material to penetrate into the pores of the concrete. The 2nd and 3rd coats can be more viscous as deemed by the material, in the case of 100% solids, which are common in some epoxies and polyurea.