If most of your applications are open source, switching to BSD will be fairly straight forward on that front. That's particularly since you're coming from Gentoo (i.e. you'll probably have to compile a lot of the software that you want to run under BSD).
The biggest hurdles are going to be the sorts of things that a generic question cannot address. Is your hardware compatible with the version of BSD that you've selected? Unlike Linux, where everyone is using the same kernel and has almost the same access to kernel modules, different implementations of BSD use different kernels. As such, selecting an implementation depends as much on low level details as it does on the userspace. (While I've pointed out hardware compatibility, any feature that is found in the kernel needs consideration.)
Another consideration is whether you're comfortable with managing BSD systems. Unlike hardware support, this is difficult to assess objectively. Some people like the core OS being a unified system that you update all at once. Other people like the piecemeal approach of Linux. Keep in mind that the core OS could mean everything from the kernel, to development tools, to the X server. (It does vary a bit from implementation to implementation.)
You will also run into a bunch of stuff that you'll have to relearn, particularly if you're accustomed to working in the shell. Software packaging and installation is the first one you'll bump into, but BSD also has it's own set of utilities. Some of these utilities are quite similar to the GNU utilities, but the extended functionality is quite different.
If you want to switch to BSD, I suggest doing it on a secondary computer first. If you run into specific issues, ask specific questions. Odds are that those issues can be resolved, but it will take time to sort through all of them. BSD can be an immense pleasure to use, but it involves a lot more than which applications are and aren't available.