PREP, PREP, PREP!
Most of the product out there is nearly the same, what you do to your floor before you apply the epoxy will determine if it stays put for a year or ten plus years.
The ONLY way to make sure that the epoxy properly adheres to the concrete is to use an industrial diamond tip grinder on the floor. Acid etching will not guarantee adhesion.
The previous owner of my house did a rustoleum coating himself about a year before I bought the house in 2006. He used the acid etch method to prep. The floor was already starting to peel where car tires sat about a year after he applied the coating. Fast forward to this year. The peeling was getting really bad, so I hired a handy man that does floor coating on the side to re-do the floor the RIGHT way. He ground the floor, power washed it and applied one coat of grey epoxy, and two coats of clear epoxy. I am VERY happy with the results and he guaranteed that it will not lift or peel for at least 10 years or he'll re-do it for free.
It wasn't cheap, but it was worth it.