Fish can survive in frozen water because only the surface of the water freezes; the fish are able to live life as normal at lower depths beneath the ice. Oxygen is trapped beneath this ice layer, and fish and other creatures living in the water can live quite comfortably despite the frozen surface layer.
Although water in lakes and rivers is generally colder the deeper one goes in the summer, in the winter, the exact opposite is true; the deeper down one submerges, the warmer the water temperature is. This is due to a phenomenon regarding how water molecules arrange themselves.
The frigid water beneath the ice allows fish to sustain life, thanks to key components of underwater survival in winter: metabolism, oxygen and food. Even though oxygen is present in the water, with less light penetrating the water, levels of oxygen drop off. Fish are cold-blooded creatures, however, and they can readily adapt their metabolism to withstand their environments. Fish alter their activity levels, with some staying somewhat active, others moving sluggishly and some hunkering down for the winter with barely no movement at all.
If cold temperatures persist for long periods of time, some fish may die. This is because the oxygen level gets too low to sustain life. This is called "freeze out" or "winterkill," and it is a natural phenomenon.