DNF is a software package manager that installs, updates, and removes packages on RPM-based Linux distributions. It automatically computes dependencies and figures out what things should occur to install packages. DNF makes it easier to maintain groups of machines without having to manually update each one using rpm.
DNF is the next upcoming major version of Yum. It roughly maintains CLI compatibility with Yum and defines strict API for extensions and plugins. Plugins can modify or extend features of DNF or provide additional CLI commands on top of those mentioned below.