Even if you're not an OpenBSD user, it's always good to see just what sort of innovations they (and the other BSDs) are regularly coming up with to solve all sorts of operating system problems, audit code, and improve security and performance.
We ran FreeBSD on a few racks full of highly used web servers (and some auxiliary servers) from 2000-2012.
I liked it because it was rock solid and configurations were simple and straightforward. It also made some things, like read-only bind mounts, easier than Linux did at the time.
However we finally gave up because the update/upgrade process was a big pain compared to Debian so it was harder to schedule updates, and because it was hard to find people who were familiar enough with it to take anything off my plate.
Now only using it for firewalls. Everything else on Debian linux which is slowly getting more annoyingly opaque with stuff like systemd that infuses magic and binary-format logs and stuff into things that used to be easy to debug. Who knows, maybe we'll be begging it to come back into our arms again one day.
One of my biggest knowledge gaps was networking, so many years ago I bought a little single board computer and committed to learn OpenBSD & roll my own router.
I learned a ton, and definitely recommend this as the next step for someone who installed a BSD in a VM and is intrigued.
That sounds similar to my "origin story", I managed to get an older PC from a gamer friend who had replaced it and had been too lazy to get rid of it. I installed NetBSD on it after I failed to get my ISDN card to work on FreeBSD and set it up as a dial-on-demand router. And I also tried out a lot of other stuff related to system administration and networking - Apache, Squid, BIND. A few years later, I inherited an old SparcStation 20 and set up diskless boot to run NetBSD on that as well. Fun times, I can highly recommend something like this to anyone new to IP networking and Unix administration.
Odroid H3 is pretty good. Bought one myself as my (yet to be fully operational) home router.
It's small, quiet and has 2 ethernet for WAN and LAN and you can plug in an official USB Wifi dongle addon and it's good to go as a router.
You need to pick a few addons from the bare machine, like memory (I went with 8GB to run many containers), ssd (I went with m2 instead of emmc) and a case.
It's x86, so you'd have maximum compatibility for architectural differences.
As mentioned the apu2s were great but EOL now. They also didn’t push line rate when I upgraded to gigabit Ethernet.
I just went to a local computer shop and picked up a HP desktop which was likely off a business lease, then tossed another NIC in. It works a charm and routes gigabit just fine.
My personal suggestion would be anything you have lying around your place that has supported graphics. Graphics are always the big end-user pain point for any OS.
Protectli [0] has a bunch of systems that should meet any number of price ranges and network needs. I've not personally tried OpenBSD on them, but I see nothing that should cause any problems. They're also small and fanless systems, which I really appreciate. Also usable as general purpose machine, so not limited to simple networking.
A router doesn't need a ton of power. My router is still a single core. There hasn't been a need to update it because my internet connection is only 50 megabit. If you have a lot of users and heavy traffic, then you will need more, but if it's just you and the WAN, you really don't need much at all.
Honestly, any off the shelf or eBay x86 mini-ITX board is fairly well supported. Probably stay away from Atom CPUs (Celeron or i3 is fine) and any exotic hardware, use whatever ITX case you want and a PicoPSU, stuff it with a 2-4 port NIC and you're good to go.
The thing about the BSDs, and especially OpenBSD, is that their MAN pages are phenomenally good. Documentation on their respective websites covers most of the rest of what you need. If you want to really nerd out, I highly recommend all of the No Starch Press BSD books by Michael W Lucas (the Absolute BSD books are a good place to start), but they are entirely supplemental.
As the other poster said, the man pages are great, but OpenBSD's homegrown daemons are also all very similar in style. A daemon ${service}d and a control interface ${service}ctl (ie. ntpd/ntpctl ripd/ripctl ospfd/ospfctl relayd/relayctl pf/pfctl etc). The control interfaces are all designed to work similarly to each other, so they are very intuitive once you learn one. It's also worth noting that most services have separate manual pages for the daemon, the control interface, and the configuration file. I've also noted that many tools are very similar to Cisco IOS equivalents.
I decided to try it out on my laptop sometime in 2020. I really enjoyed using it in the terminal, but found it less usable in desktop environments (I used gnome shell). It was certainly usable, but less refined that I had hoped.
Then I installed FreeBSD on an arm based sbc I use as a server and NAS. It has been a joy to use there. Basically rock solid, and the scheduler seems to prioritize interactive processes so that even under heavy load I can diagnose what’s going on quickly. I now prefer it to Linux in shell environments. I also have openBSD on a thinkpad laptop, which has been fun
BSDs may not have a significant presence on desktops, but they're well known in the networking world for their reliability. They also were the foundation used to build OSes for specific applications. OpnSense and XigmaNAS, for example, are two excellent FreeBSD based applications aimed at firewalling/security and NAS/services.
Sorta. The original firewall distribution derived from FreeBSD was m0n0wall, then its development stopped and it was forked into pfSense, then pfSense was forked into OPNSense and the two projects are now complete separate things.
About which one to use, Manuel Kasper, the original m0n0wall author, encourages to use and contribute to OPNSense, which is also the one I would personally choose after [0] happened.
As a sysadmin, they are 100% better in a server environment. Desktop usage takes more tweaking and time to get working but will work eventually. I used Open and Free BSD as my main os on my Dell Latitude until I found nixos
I've tried it, including running it as a VM for a while with the hopes of using it more, feeling like I was missing out on something. It is different than what I am used to with *nixes, and for my interests and efforts, I just haven't had the time to sit and make it work for my needs as well as something like Debian does out of the box. If you use macOS, you're using a cousin of BSD, if that scratches an itch.