So if Cores 3 and 4 were loaded 50% on a quad core we could expect 10% boost with hyperthreading on dual core?
Maybe. The questions you have to ask are: why are the threads assigned to cores 2 and 3 (or 3 and 4 as you put it; in most cases, the cores on a quad go from 0 to 3) only loading the cores to 50% load, and if that is a load average, then what kind of load spikes are there? Furthermore, how is the scheduler affecting things here?
If you load up something like, oh I don't know, Nero or what have you, and start transcoding as you convert some .avi files or .mov files or what not you just dumped off your digital video camera to mpeg2 for burning to DVD, chances are all your cores are going to spike or come close to 100% utilization with relatively normal thread priority (at least in Nero 7 you could set this manually during the transcode, and I know for a fact that it pegged my poor Sempron 3200+ at 100% with the default thread priority).
Set the thread priority lower and, viola, your cpu load might start to fall, even though we all know there's PLENTY of work left for your CPU to do thanks to Nero. In the case of my dinky old Sempron, the reduction in load probably was a result of the chip being switched to low-level background tasks due to the now-low priority of Nero's thread(s). On a dual-core or quad-core (4 physical cores), a reduction in thread priority might only reduce the load on one or two cores depending on scheduler behavior.
So, with some games, you might have some low-priority background threads being offloaded to the logical cores where there will be a fight for CPU time involving those low-priority game threads and threads spawned by background processes. The net result is that, regardless of how much work those low-priority game threads actually represent, you probably won't see a whole lot of load even you're dealing with logical cores.
In other cases, games may only occasionally spawn additional threads at high-priority that will be offloaded to logical cores on an i3; the performance impact of HT, in those instances, will be based on how well the logical cores handle said load spikes. If your logical cores are pegged at 100% handling threads that only spawn intermittently, then an i5 with physical cores 2 and 3 handling the same threads with a load average of 20-30% may give you better overall performance (or at least smoother performance) simply due to their ability to resolve said intermittent loads quickly and expediently (at least compared to the logical cores on an i3 of the same clockspeed). Sure, it'll be better to have HT than not to have HT on an i3 in both of the above instances, but you can't always assume linear performance increases from having logical cores around to handle extra workloads.
Then there's the issue of resource-utilization efficiency in the phsyical cores of an i3; the more efficiently the resources of the physical cores are utilized, the less of an impact HT has on performance.
The simplest answer to your question is this: run comparative benchmarks and find out. Since i3 isn't being benched in many places yet, we just don't know for sure. The only thing we know for sure is that if an i3 is trying to handle a game that spawns four high-priority threads that can constantly load four physical cores at 100%, HT will make sure that any unutilized resources in the physical cores will be assigned to the logical cores, and that the logical cores will make thorough use of them. Anything else is best left up to app-dependent benchmarks since the 20% number I threw out there is sort of an average from a lot of Nehalem-based benches and *gasp* Northwood/Prescott/Smithfield benches (though back in the Netburst days, conventional wisdom was that HT only gave you about 5-10% extra performance across a wide variety of tasks; how times have changed).