Like, Parakeet, I have been detailing cars for years and I degrease engines everyday. Most part stores should sell some kind of degreaser, take your pick. I have washed engines cold, hot, on, off, doesnt really matter. I have only had really old crappy cars not start, and thats only been a handful in the last several years. Then I just rinse it thoroughly with a garden hose and sprayer (we dont have a power washer). They come out great. We have a liquid base tire shine dressing that we spray all over the engine, firewall, etc and it makes it look new AND shiny. I think most tire foam or tire shine would have the same result.
Here is a tip though: Before spraying the degreaser, wet down your fenders and grill and wash them with a wash mit and dont rinse them off. As you hose your engine off, hose the fenders off as well. This acts as a "barrier" to the degreaser in case you overspray some. The kind we use at my work is strong and can leave streaks on the fenders if you dont do this. You can always polish them out but why make more work?
Thats my daily basis engine washing experience
_________________
My 03 Jeep Liberty Limited:
http://www.cardomain.com/id/Saint_Anger
*Pro Car Detailer*