(more cores for better interactivity?)
Ummm...do greater number of threads not exist? More cores to handle OS/background threads means less time wasted in context switching. Overall system responsiveness is improved.
Let's say you have two cores in your system. One is busy for 3 % of its time, the other is entirely idle. When one of the (background or foreground) tasks become runnable, does it matter if the OS schedules it on CPU 0 or on CPU 1? Nope, either of the two CPUs would have to go through the motions which a context switch involves (loading stuff into caches and TLBs, et cetera pp.). If anything, it is worthwhile to keep it all on one CPU (as long as it is not much utilized) and leave the other CPU idle and thus in a low power state.
One thing that is not measured/benchmarked very well is real user workloads where they may have multiple applications open at the same time and switching between them frequently.
Context switches take awfully long if you look at them in terms of CPU cycles. Yet they happen magnitudes faster than humanly perceivable response times.
The upshot is: More cores are good for throughput (to a degree which depends on your algorithms and data), not for responsiveness.
What you need for responsiveness is a) preemptive multitasking (Microsoft has it since Windows NT), b) some smarts and precautions for those remaining parts of the system which are not preempted (some interrupt handlers, or AFAIK in most of the popular OSs: parts of all of the interrupt handlers), c) not overdoing it with highlevel software bloat like visual effects in the UI which introduce a perceived sluggishness artificially, d) responsive mass storage, responsive networking peers...