Another vote for Technitium DNS. I used PiHole then Adguard Home and Technitium is much better for me. I actually run two of them so I never have more than one down outside of power outages. One on my Pi and one on my server that runs my Docker containers for my other services.
I know others pointed to it a way to partly do this, but I wanted to just say that I don’t replicate mine on purpose at this point. The one running on my Pi updates automatically and the other one does not. That allows me to test new releases on one DNS without borking my whole setup. Then I update the other manually once I know the Pi is working fine.