best distribution distribution for DHCP, directory services etc
I used OpenSuse for this, it's big advantage is that is newbie friendly (GUI to configure almost everything) with several additional package repositories and quite Micro$oft friendly.
If you really want to learn, I'd rather advice you a Debian or a Slackware, you can still do everything you want, but you need to put much effort, that is welcome IMHO.
Honestly, the "best" is Windows Server. It's not free, but it's honestly not that expensive for Windows Standard or SBS.
DHCP & DNS are easy: take your pick of linux distros. For DS, it depends on what you want your directory to do. If you just want authentication, then LDAP on a linux host will do fine. If you want other Windows desktop management tools, then your only option is Windows Server with Active Directory. Either way, you will have to learn how to configure and administer the service and OS. In my opinion, DHCP and DNS are better handled and easier to manage in *nix than Windows.