I've always used a car wash for cleaning the engine bay and underneath. You may have to sit there a while to let the exhaust and such cool down a little but the engine cleaner works pretty good.
Take a big baggie and some rubber bands to cover the distributor, alternator.....and wear the crappiest clothes you have, goggles if you got em!
Plastic sheet for the seat for the drive home.
If you don't get all wet it won't be clean!!
David