The question pretty much stated it all, I want the red parts for transparency and all the white removed.
3 ways to do this:
Use Magic Erase Tool in Photoshop and adjust the Tolerance (Erase Range).
Magic Wand Tool
My 2 cents.
Take your image (A) and choose a layer that is the most contrasted one. In this case green wil do (B).
In case you need it, slide the levels so you have a pure black and pure white on the center part of the colors. Do not over do this or you will losse detail on the aliasing your image already has (C).
Make a new layer of the color you need and make a new layer mask, and paste your image there. You probably need to invert it (D).
Ready. The image has the exactly same detail of the previous one and it has a pure colour, no halos or saw edges. (E).
Actually it is almost the same Scott, posted, but with some more detail.
To completely remove all white from the image without losing any gradation from other colors (as will happen with the other methods presented here), do as follows:
Expanding on this answer:
If you have Adobe Illustrator handy:
Window > Image Trace > Advanced
The result in my image was very identical, only thing I noticed was that the result's borders grew by 1 pixel, not noticeable at all, you will only see it if you zoom maximum (12800%).
I know that OP asked for Adobe PS, but since SE is a knowledge website and not a forum, I'm gathering all possible ways of removing white BG from image.