My favorite method for removing a stuck piston is the hydraulic method - you know, screw a fitting in the sparkplug hole, hook up the grease gun and pump like mad. That said, I fully appreciate the pain of pumping an engine full of grease only to have grease coming out all over the place - and the piston is still stuck. And what about two-stroke engines? If the piston does move, once it gets down to the ports you're left with grease everywhere. The problem, of course, is keeping the grease inside the cylinder. Well, I have discovered something that makes the hydraulic method a lot more successful, and it's wax. Yes, common candle wax.
The process is fairly straightforward, and starts with buying a 10-pound slab of ordinary candle wax. If the engine has been soaking in penetrating oil you'll need to clean all of that out. Readily available solvents should be sufficient to flush all the oil out. Let the engine dry completely and then stand it on end, piston facing up.
For a 4-stroke engine, make block-off plates for the intake and exhaust ports with something strong and watertight. You will also need a plug for the spark plug or igniter hole. Cut off a big chunk of wax and heat it in a pan. Wax melts at 132 degrees F. After the wax melts, pour some into the ports (with the valves in place, if possible), and let the wax harden a few hours. The wax contracts as it cools, so you may have to repeat this step a few times. Now put the plates over the ports and pour wax into the cylinder through the spark plug or igniter hole, filling the cylinder to the top. Plug the spark plug (or igniter) hole and stand the engine on its head (piston facing down) and let the wax cool. Turning the engine on its head helps seal leaky head gaskets and valves. After the wax cools, take the plug out of the spark plug hole and drill a hole through the wax to the piston. There should be an air pocket just above the piston, created as the wax contracts as it cools while the engine is standing on its head. Now put a fitting in the sparkplug hole and pump the cylinder full of grease. On igniter-equipped engines you may have to modify this last procedure a bit, depending on where the igniter is located. Trial and error will usually guide the way.
If you're working on a two-stroke engine and the piston is covering the ports, pour wax into the ports, filling them as much as you can. Put block-off plates over the ports and let the wax cool, then pour wax into the cylinder. If the ports are already uncovered, put the block off plates on and pour wax into the cylinder with the piston facing up and let it cool. If it is a head-type engine, pour wax into the cylinder, put your plug in the hole and turn the engine upside down (piston facing down) and let it cool. After it cools, drill a hole through the wax down to the piston and pump in the grease.
Okay, so what about an engine with a cracked cylinder? If the crack is inside the water jacket try filling the water jacket with wax, letting it cool and then proceeding as outlined above.
The basic idea here is to seal any place grease could escape, and the thicker the wax at any escape point the better. Patience is a virtue with this process, and it's good to give the wax a night to cool and settle. And remember, just like the grease the wax will want to come out under pressure, which is why the block-off plates are so important. After you get the piston out, you simply melt the wax out.