Whether your showerhead is broken or you simply need to replace it with a low-flow model to save water, it may not want to come easily. Hard water deposits and rust can lock the threads and make it impossible to turn by hand. You need the help of a wrench, which you can also use to replace the shower arm, if necessary.
Removing the Showerhead
Wrap the strap of a strap wrench around the base of the showerhead and tighten the strap securely.
Twist the showerhead in a counterclockwise direction. If it doesn't move, spray lubricant into the threads and wait at least five minutes, then try again. Repeat once or twice.
Loosen the threads with vinegar if spray lubricant doesn't work. Vinegar dissolves hard water deposits, while spray lubricant is best for rust. To allow the vinegar to soak into the threads, wrap an absorbent rag around the base of the showerhead, soak the rag with full-strength vinegar and let it sit overnight.
Use a pipe wrench if you can't get the head to move with a strap wrench. Extend the handle of the wrench with a 2-foot length of 1 1/4-inch steel pipe to give yourself leverage. It's unlikely the threads will be able to resist this much torque, but it's possible that the entire shower arm will unscrew before the head comes off. If so, replace the arm along with the head.