Since wireguard uses allowed-ips for making routing decisions, it has been straightforward to set one up.
The gist is, on the client configuration:
1. Set DNS server IP against allowed IP in the peer (which is your wireguard server) section.
2. Set DNS entry to the same IP as above for the client interface.
Ref the discussion and the linked blog post (that talks abt Pi-Hole with wireguard): https://news.ycombinator.com/item?id=19544532, https://www.reddit.com/r/WireGuard/comments/bqccdz/split_tun...