It typically has less to do with performance or stability than with ease of use. While Linux is piling on features, BSD focuses on clean design and quality of code and documentation. Linux is "do it now," BSD is "do it right."
Much of the difference is subjective. FreeBSD feels coherently designed, whereas Linux is a patchwork of programs written by different people with different styles and philosophies.
I don't know a lot about Gentoo (most of my experience is with Debian and Slackware) but from what I understand, its purpose is to be as flexible as possible. That's a legitimate goal, but it seems to conflict with ease of use.