Cores always win like for like. HT can add x% in performance (the value varies depending on the task, anything between 0-15% ish), an extra core can add 100% performance.
Depends on the CPU, as I'd expect hyper-threading on the higher end CPUs by default; however, keeping it simple and assuming both are similar, then 4 physical cores beats 2 plus hyper-thread.