FreeBSD has noticeably higher performance, more packages, and is great for things like databases, virtualization, or application servers that are behind a load balancer or firewall. It has a lot of the OpenBSD applications ported to it though, so you can run pf or relayd on FreeBSD just fine. It's a bit more convenient to run FreeBSD for some things because of extensive packages (FreeBSD has things like C++ actor framework in packages, doesn't currently compile on OpenBSD). The jetbrains IDEs are better supported on FreeBSD than on OpenBSD too. (I've made some personal modifications to get things working on OpenBSD). Integrated ZFS is really nice for databases and storage servers as well.
I don't have much experience with NetBSD, but it is portable to all kinds of things (e.g. toasters), and they have done some neat things with rump kernels.
Dragonfly BSD has some cool experimental stuff with SMT and hammer filesystem, but I haven't played around with it much.
EDIT: A few nice things in comparing BSD to Linux. ZFS on FreeBSD is nicely integrated w/ the kernel. In general, I think solutions in BSD take longer to come around than Linux, but when they do they are well designed and thought through. Things just seem to fit better. From what I've observed, the community thinks things through and often recommend that someone use Linux if it would work better for the use case. That is a fantastic level of maturity; like when the hardware store guy recommends the competitor store down the street, because they will have what I need.