actually there are many. loads of software router solutions are based on DPDK and/or FD.io. they are not really known because mostly used by e.g. service providers like Verizon, Orange, T-Mobile, but iirc even Netflix uses it for some VNFs.
DPDK is not magic. I would say this is a collection of wisely written libraries and functions. originally the intention was to get rid of PCIe transaction overhead and they did a pretty damn nice job there, mostly by batching. on top of it the architecture dependent (or if you will the ones depend on the supported instruction set) functions are also pretty efficient. the other big deal is the poll mode driver. the most common NICs (and some unique ones, too) have a driver where receiving packets are not triggered by interrupts but instead a tight loop is checking if there are any new packets arrived. the advantage of this solution is the pretty low latency and better efficiency (got rid of overhead of interrupts). but there is no free lunch, so you basically sacrifice a whole CPU core for this job because in order to squeeze the highest possible packet rate from the system you also might want to make this core pinned, isolated and dedicated.
so basically if you are on x86 and you need to move lots of data efficiently between the CPU cores and PCIe NICs then DPDK can help you a lot. the ideas and coding guides can be used for any type of card, so e.g. software of a video capture card could be built around the same logic, too.
sorry if the explanation was too basic for you, please feel free to ask.