I have had lots of good reports about L'Oreal Castings. It contains no ammonia and is supposed to wash out after 20-28 shampoos. It is not permanent.
It is important to remember that if you hair is extremely porous or damaged that any semi permanent color that is a lot darker than your natural color may not ever permanent wash out. When in doubt, call the color hot line for the product you buy.
If you're buying it off the shelf, I'd recommend Clairol Natural Instincts. "In-Style" magazine just rated it the best semi-permanent color, and I've had good luck with it. It definitely washes out if you stay close to your own hair color. (Black on red would probably not wash out gracefully, of course.)
If you take the salon route, look for Redken Shades EQ.