Recommendation for a free and small DNS server for Windows
Unbound. It is by far the easiest to setup on Windows. Just download and run the installer and you're done. Uses less than 8Mb of memory on my server, much less than Microsoft DNS.
This should be a guide for getting BIND running under Windows
As an alternative, you might consider setting up a lightweight linux distro as a virtual machine under VirtualBox or similar.
Have a look on Wikipedia there are quite a few to go at: http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software
I Vote for bind as it has web management.