I've been using OpenDNS (http://www.opendns.com/) because its faster for me and it has a lot of features. You can also check out dns performance with tools like DNS Bench (http://www.grc.com/dns/benchmark.htm).
I use OpenDNS for DNSCrypt. I don't care about DNS performance - all DNS is prefetched in Chrome anyways/ all browsers cache it.
As far as I am aware of DNS is cached in two places; on your router if it has a built in DNS server or Windows dnscache service. If your add the IP addresses for whatever DNS provider you are using to your LAN settings, you are overridding the router DNS server capablity. Hence no caching from the router. If you disable the Windows dnscache service, then there is no DNS caching at the OS level. However depending on your firewall, you might have to add a DNS connect rule for every application that requires internet access.