If your workload can keep 8 cores fully busy, then 8 cores may be better.
If not, then 4 faster cores may be better and response time will be better.
The key is utilization, regardless of 4/8 cores. Once you start to go over say 75% utilization, queue lengths will build and responsiveness will suffer.
Agreed. More cores doesn't mean faster performance, the question comes into how many threads are being saturated / utilized and the type of data being processed. If your application(s) can utilize more than 4 threads of data, then the 8 core system should perform better.
On the flip side, if your application(s) only use 1-4 threads, then the faster clock speed of the 4 core system will be more beneficial.
It also depends on what the CPUs are, if the 8 core server is an older dual Core 2 Quad system and the 4 core server is using a Nehalem or Sandy Bridge based chip it would perform better in many cases, especially if it has hyper threading to go with its 4 cores.