They need the right diagnosis. A fogged pane, a sash that won't stay up, and a cold draft are three completely different failures — with three completely different costs. Knowing which one you have is most of the money.
Start by locating the failure: the glass unit, the moving sash, or the frame and its flashing. Almost every bad repair decision starts by guessing wrong here.
The seal on an insulated glass unit has failed. Moisture is now inside the sealed cavity, between the panes, where no amount of cleaning will reach it.
A broken sash balance or spring. Extremely common in double-hung windows, and usually one of the cheapest repairs on this list.
Often failed weatherstripping or a compromised perimeter seal rather than the glass itself — frequently fixable without touching the window.
In many frames a single pane or the whole insulated unit can be replaced while the existing frame stays in place.
Swollen wood, paint buildup, a racked frame, or worn hardware. Diagnosis matters: a racked frame points at a structural cause.
Usually flashing, caulk, or drainage — not the window. Chasing the glass here fixes nothing and the damage keeps compounding.
A modern window is an insulated glass unit: two panes separated by a spacer, sealed at the perimeter, with a desiccant inside the spacer to absorb the small amount of trapped moisture. When that perimeter seal fails, humid outside air cycles into the cavity. The desiccant eventually saturates, and moisture starts condensing on the inner surfaces — where you can see it and cannot reach it.
This is why cleaning never works, and why the fog often appears and disappears with temperature. It also means the unit has lost much of its insulating performance. The good news: in many frames the insulated unit alone can be replaced while the existing frame, sash, and hardware stay exactly where they are.
An honest contractor will tell you when the frame is the problem. This is the framework they're using.