Should i get a i3 4150, i5 4590s, or fx 8320, or fx 8350

Solution
A i5 will have 4 full cores.
A i3 will have two cores plus hyperthreading.
Hyperthreading uses unused cycles of the main cores to dispatch two additional threads, giving the appearance of 4 threads. But... since a hyperthread is using only part of a core, it will be perhaps only 25% the power of a full core.

The FX 8350 chips are advertised as 8 cores. In actuality, there are 4 modules with two cores each that share some resources. Not unlike hyperthreading if the shared resources are needed by both tasks. In essence, I see a FX8xxx ad a hyperthreaded quad core with hyperthreading that is perhaps 80% effective. Not bad, but not perfect either.

More importantly, the intel architecture has improved so that an intel core is perhaps...
The i5 or FX 8320 are equally good.
FX 8320 are good for video editing and rendering due to their multicores.
Some games favour the Intel due to single thread performance. But most games are coming out with multi core support so they are even.
In gaming, they offer similar performance in most games.
FX 8320 is a good cpu if you are on a budget as well.
However, with a FX 8320 it is recommended to get a 970 or 990FX motherboard since they can handle the FX 8320 well enough.
 
A i5 will have 4 full cores.
A i3 will have two cores plus hyperthreading.
Hyperthreading uses unused cycles of the main cores to dispatch two additional threads, giving the appearance of 4 threads. But... since a hyperthread is using only part of a core, it will be perhaps only 25% the power of a full core.

The FX 8350 chips are advertised as 8 cores. In actuality, there are 4 modules with two cores each that share some resources. Not unlike hyperthreading if the shared resources are needed by both tasks. In essence, I see a FX8xxx ad a hyperthreaded quad core with hyperthreading that is perhaps 80% effective. Not bad, but not perfect either.

More importantly, the intel architecture has improved so that an intel core is perhaps 30% faster per clock than an amd core.

What does this mean to you?

If you are gaming, most games will only use 2-3 cores. So faster cores with a quad is the most effective way to go.
There are some exceptions like FSX. I doubt that game producers will undertake the expense to make their games fully multi core enabled if they also require more than 4 cores to run. They would not sell many.

On the other hand, such apps as rendering are multi core enabled, and the extra cores of a FX-8xxx will overcome the individual core speed of a intel chip.

See what your usage will be and select accordingly.
 
Solution