2 vCPU will likely be too few -- 4 vCPU for a development environment is usually sufficient. If using Hyper-V, this is carved up into time slices -- you're not dedicating the pCPU to the VM(s). For development, it is OK to oversubscribe vCPU.
The host should not be a domain controller. It should only run Hyper-V. You should instead create the DC as a VM. DCs can be assigned dynamic vRAM from 1 - 4GB, they'll stay on the low side of that for the minimal usage you'll see on the DC.
When you purchase a new server, you should get a CPU/motherboard that supports ECC RAM. It is essential to use ECC when you're hosting VMs or a Domain Controller.