I have soaked engines with Castrol Degreaser then hit them with a high pressure washer with good results, the key to a good job is pre-soaking. Our pressure washer uses very hot water and after 30 minutes of washing or more, the block is getting warm enough to dry out fairly quick so rust isn't a issue for me. If you don't have hot water, head to the car wash, they work real well for this. Have a few cans of WD40 on hand, or compressed air or even a leaf blower to dry things out. You will never get all the oil out of the bearings so the crank shouldn't rust up. The engines I cleaned were filled with oil with a few days and the oil pumps spun over to coat and protect the internals. The only parts left in the blocks were crank, rods, and pistons. I had the rest of the pieces off so I could clean it better. Like I said, if you are going to spray the inside, do a good job and really go at it or don't bother. If you don't come out with grease and dirt in your face, you didn't work hard enough!
I had a Ford flat head that had set for years but wasn't locked up. I filled it with two gallons degreaser and water, so much it was running out the top. I let it set for a day then pulled the drain plug and inserted the power hose through the drain plug. I let it spray for 30 minutes till the soap was gone. I then rolled the engine around cleaning top and bottom. Again using very hot water, this engine dried out very quickly. The next day I filled it with oil and fired it up. To this day, its still running (six years) and the oil looks brand new every time its checked.
Joe