Fish will hold ANYWHERE they can get a bit of a break from the main flow.
This often means the sides, especially if there is no structure to provide a slow spot, and the bottom is relatively smooth (rough bottoms cause slow spots at the bottom.)
Water flow is all about friction. Friction causes the water to slow down... And this friction is caused by the bottom, the banks, anything in the water (big boulders, logs, ect) and even the air. Typically the fastest part of a flow will be near the middle, a few inches below the surface.
Spots right near the main flow also provide the other thing the fish needs - food supply. Food drifts down the main flow, and from here the fish can dart out, grab it, and move back to slower waters.