systemd is, first, a new init system for Linux, to replace sysv init.
Additionally, it brings a host of companion daemons: logging (journald), a session manager (logind) and a bunch of others.
systemd and it's companions offer a host of functionality and a number of software pieces are becoming to depend on it, to the point you "can't" run a fully functional Gnome3 without using systemd as init (it needs the session management functionally of logind, for example).
The major distributions have adopted systemd as default init system: Fedora, RHEL, SuSE, Debian and Arch. Ubuntu hasn't changed yet but they have announced they will follow Debian in the future.
There is a number of people who dislike it for many reasons, which are hard to summarize because many of the people dislike it for false reasons and only some actually make valid and constructive critiques.
Eg, many people claim it's monolithic. In fact, it's made of ~100 daemons and applications and the init process isn't that big. Much much smaller than the Linux kernel itself, which a big monolithic kernel.
Many peole dislike being "forced" to use because the major distributions are adopting it and major projects like Gnome are becoming dependent (with KDE talking about it too).
I use "" in "can't" and "forced" because it's not strictly true. While a lot of people whine and hate in slashdot, a small number of people have been putting their code where their mouth is and working on alternatives.
Eg, there's a systemd-shim package in Debian which actually allows you to run Gnome3 very nicely without using systemd as init, by providing the necessary systemd features.