Been using Pi-hole for several years now and Pi-hole is absolutely a lifesaver. If you are not already using a DNS sinkhole, have a look at the project. But recently I updated my pfSense hardware and started wondering if things could be done a bit more simple - by adding my DNS sinkhole directly to the same hardware. Turns out you can; pfSense has a package called pfBlockerNG, that aims to basically do something like Pi-hole. It's not strictly for ad-blocking, but rather for general-purpose DNS filtering. This makes pgBlockerNG potentially a lot more powerful than Pi-hole, but it also means the learning curve is a bit steeper. So if all you're looking for is a DNS adblock, you are fine with Pi-hole.