I never had problems using yum. dnf has the same interface but works faster, and does more things (e.g. Copr/repository management and `whatprovides`) and better.
I've found yum to be slow and prone to breaking. Part of the problem is that CentOS packages are often far behind. EPEL is a symptom of the problem more than it is a solution. Invariably, when building software which builds easily on Debian based systems, on CentOS, I end up compiling many packages from source because either they are not available or are horribly out of date.