Ferrying while swimming is also the same technique you use when boating. Keep your head up so you can see where you are going, set a ferry angle somewhere around 45 ° to balance your upstream swimming against the downstream current and swim hard. Faster water uses a smaller angle and very slow water you can simply swim directly across at a 90° angle. Some advocate a mad dash perpendicular to the river. This may be effective for a very short dash but exposes the full body to the current and will quickly sweep you downstream. The ferry angle is the only way to go when crossing a wide stream with current.

Cross eddy lines using the barrel roll and puncture eddies perpendicularly. Basically, catch eddies high just like you do in a boat. Puncture the eddy line on an angle and barrel roll to flip over the eddy line instead of bouncing off. This is a good video on dealing with eddies and the barrel roll technique: Swimming into an Eddy.

When swimming in fast water, all the same boat principles apply. Point yourself upstream towards the point you are trying to reach in a ferry angle. Punch eddies perpendicularly and roll the body over to cross the eddy line. Most of the time, your feet are pointing downstream to protect against foot entrapment. The exceptions are going over strainers and quickly crossing eddy lines.

When transitioning from defensive to aggressive swimming, simply roll from your back to your belly. Make certain you keep your feet on the surface to avoid foot entrapment. Aggressive swimming works best in deeper water, over 2' in depth. Swimming in pushy water is very tiring, especially if the water is cold. Plan on using short sprints of aggressive swimming to reposition or get to a close by objective. Take breaks by flipping back to defensive swimming. Be very careful when you reach shallow water. It will be extremely tempting to stand - make certain the water is shallow enough and take your time.