Don't get me wrong, I was brought up on BSD (4.1 and 4.2 ;) its just that BSD tends to have a slightly more primative GUI (unless you get a MAC and pay for Apple's added value), typically just because there are fewer software folks to port the applications as quickly as they do for Linux (Apple Linux has the same problem -- it tends to run a versions or two behind the main x86 Linux stream).
I find Linux servers stable and secure enough to run our WWW and email, which they have done for years and years, with uptimes in the MONTHS...
BSD does lag behind Linux in development - for the sole reason that code which is not considered "well-tested" doesn't make it into the kernel. The disadvantage is that there is no "bleeding-edge" hardware support, but the advantage is that once the hardware is supported, you're pretty much guaranteed it will work well, without much effort. On the other hand, many of the "bleeding-edge" Linux drivers (try using a devel kernel sometime) don't work, many of the interfaces to the Linux kernel change between releases, and programs built for an older version of kernel don't necessarily work with newer versions.
I used Linux for six years, in production environments. I rarely had a system upgrade go well - I usually ended up having to re-install. Currently, I work for Oracle, who is pushing for everyone to adopt Linux. Unfortunately, most of our software (not the database, but our "clustered filesystem" driver) only works on a specific release of the kernel, and then, only with a very specific set of patches. This is clearly MUCH more effort than the added functionality is worth, wouldn't you say? After gritting my teeth with each Linux component upgrade, I finally tried FreeBSD out after a friend gave me a CD. It installed much more quickly, with less overhead, and has been more maintanable overall than most Linux distributions ever could be. (My comparisons are against RedHat 4.1 and Slackware, of course. Nowadays, I prefer Lycoris, but I've coded for them so I'm biased... :))
(FreeBSD != OpenBSD, btw. OpenBSD lags well behind the others for the reason that it is extremely paranoid about updates. Each new feature must go through an extensive regression test before it's considered secure enough [i.e., without root-exploitable bugs] for inclusion in the kernel.)
For the record, FreeBSD supported plug-and-play before Linux did. It also supports SATA more stably than the reports I've heard from Linux 2.6. Our CardBus support may not be totally caught up with Linux yet, but it's rare that you find a device that's not supported. FreeBSD had a working bluetooth stack before Linux did.
As for the GUI, KDE runs on FreeBSD as well as it does on Linux, so there really isn't any difference in using the two. In fact, most Linux programs run just fine under FreeBSD - check out the ports tree if you don't believe me.
The final advantage I give for running FreeBSD over Linux is that FreeBSD is shipped as a unit-tested bundle. What do I mean by that? I mean the kernel, the bintools, fileutils, compiler, and all of the base products are built and tested as a single unit before release. Linux, on the other hand, is only a kernel. Any tools that you use (/bin/ls, /bin/bash, etc) are third-party add-ons which aren't maintained in the same place as the kernel. If you track the bleeding-edge Linux development kernel, this leads to many interesting situations where the bintools don't match the Kernel ABI.
hope I haven't bored you to death with all of this flotsam. :)