if you want salon quality results, and permanent color, in a natural hair color, use Wella products. the start-up cost is a bit more that your boxed at-home hair colors because you have to buy the bits (dye, developer, gloves, etc.) separately, but it's a much better value for a few reasons. 1) the color doesn't fade hardly at all, 2) the bottle of developer (and box of gloves) you buy will last through several dye jobs, so after the first time you use it, as long as you have enough of the other stuff left, all you have to get it the tube(s) of dye, and that only costs like $3. 3) it's actually the exact stuff most salons use,so you do get salon quality, literally. and 4) it doesn't do as much damage to your hair as the boxed home treatments do.
now, if you're going for an unnatural color (pink, purple, blue, etc.) the best I've found is amphigory (I've only used one of their colors so far, but it's been awesome). I've tried splat and manic panic and a couple of others, but they all faded REALLY fast. I'm talking like in 2 weeks or less it was totally faded to a completely different color (bright red to pink, dark blue to greenish teal, and vibrant purple to lavender). but I started using amphigory, put in the first dye job with it a little over a month ago, and while it has faded some, it's still VERY close to the color I had originally put in there.
you can buy Wella at just about any beauty supply store (I used to get mine at sally beauty all the time).
you can buy amphigory only online as far as I know. their website is here: http://www.amphigory.com/ the dye of theirs I used was one of their "special effects" dyes.