The answer to 'water heater won't flush' is that there are several common causes, including sediment buildup, a faulty drain valve, or a blocked drain line. Symptoms may include difficulty draining the water heater, slow drainage, or water backing up during the flushing process.
In many cases, the solution is to flush the water heater regularly to prevent sediment buildup, and to check and replace the drain valve if it's not functioning properly. However, if the drain line is blocked or there are other more complex issues, it's best to call a professional plumber to diagnose and resolve the problem.