Engine degreaser from autozone. I'd take the TMIC off and clean it seperately. Don't let too much water sit on top of the valve cover. I've never worried too much about the electronics, just don't spray those areas with the cleaner but water won't damage anything. Get a wheel brush for really dirty spots, let the stuff sit for a while then rinse off. After it dries spray with engine detailer, also from auto zone. Armorall sucks for engine bays, all you get is streaks.