I love my Microtik hEX S. It takes a minute to get used to the menus, but I really like how everything is laid out and managing using winbox. For 70 bucks it has a hell of a lot of features.
Before that I used a Ubiquiti Edgerouter X which I liked pretty well but I was not a fan of the web interface, it felt very dated; I also had issues with certain firmware updates that made the device pretty unstable. Eventually it kind of just died so I replaced it with this. I think I paid $50 for the ER-X, definitely recommend spending a little more for the hEX S.
One thing the hEX S can not do (at least that I have found) that the ER-X can that I care about is running a MDNS repeater. I have a couple subnets including one for IoT devices so this is necessary, as a slightly jank solution I ended up spinning up an Ubuntu server VM with separate NICs on the subnets I wanted to repeat between and running this binary to do the deed: https://github.com/geekman/mdns-repeater - if anyone knows of a better solution plz let me know.
pfSense is indeed fantastic. The best part about it is you can install it on pretty much anything, as long as you have a couple reasonably fast network interfaces and an okay-ish processor depending on the network load it will just work. Also has OpenVPN server baked in which is pretty cool