Taken from PCMAG ;
Intel Hyper-Threading uses multithreading technology to make the operating system and applications think that a processor has more cores than it actually does. Hyper-Threading technology is used to increase performance on multithreaded tasks. The simplest multithreaded situation is a user running several programs simultaneously, but there are other activities that take advantage of Hyper-Threading, like multimedia operations (such as transcoding and rendering) and Web surfing (loading different elements, like Flash content and images, simultaneously).
The quick explanation is that all Core i7 CPUs use Hyper-Threading, so a six-core CPU can handle 12 streams, a four-core can handle eight streams, and a dual-core can handle four streams. Core i5 uses Hyper-Threading to make a dual-core CPU act like a four-core one, but if you have a Core i5 processor with four true cores, it won't have Hyper-Threading. For the time being, Core i5 tops out at handling four streams, using four real cores or two cores with Hyper-Threading.