DO NOT USE A STEAM CLEANER!!!! Steam in the engine bay is bad. Steam can go where even water cannot. Steam will settle in electronic connectors and eventually cause corrosion there. Those little connectors under the hood do a great job keeping water out of the connector but will let steam in, and once the steam gets in it returns to water.
i use wheel cleaner to clean the engine then go over it with maguires (maby spelled wrong but o well) protectant for the inside... the motor LOOKS GREAT AND NEW stays shiney for months i load it down with the shine