@McHenry Minimal effect on having more sockets but less cores. Keep it simple.
If your license limits you to 1 socket and 4 cores, then 1 socket and 4 cores is what you use. 1 socket an 8 cores is greater than the 4 core limit.
For the 4 socket/24 core limit you could still use 1 socket and 24 cores (or 1 socket and 8 cores, or 2 sockets and 12 cores each, or 4 sockets and 6 cores each). But you can't use 6 sockets and 4 cores each because that's over the limit.
The math has to work out to support your system. You can't have 4 sockets and 4 cores if you only have 8 cores in your system (or threads, but then you have to look at the SMT notes about hyperthreading).
You can have more VMs with allocated cores than your system actually has (like 4 VMs with 4 cores each, on an 8 core host), but a single VM can't have more cores allocated then the host actually has (like 16 cores in a VM on an 8 core host).
I think the optimal assignment is to use the template default or the number of sockets your host has (or less) and then assign the number of cores you need. There's a whole NUMA issue that Xen tries to work out between the host and the guest. If you go into SQL optimization then you might want to pin CPUs for the VMs for best performance. If you have a single socket system then just use one socket and the number of cores you want. If you have a pool then watch out for the minimum system specs (ie. you can't migrate a 16 core VM from a 24 core host to an 8 core host).