Fish use gills for gas exchange.
Gills have numerous folds that give them a very large surface area.
The rows of gill filaments have many protrusions called gill lamellae. The folds are kept supported and moist by the water that is continually pumped through the mouth and over the gills.
Fish also have an efficient transport system within the lamellae which maintains the concentration gradient across the lamellae.
The arrangement of water flowing past the gills in the opposite direction to the blood (called countercurrent flow) means that they can extract oxygen at 3 times the rate a human can.
To understand countercurrent flow, it is easiest to start by looking at concurrent flow where water and blood flow over and through the lamellae in the same direction.
When the blood first comes close to the water, the water is fully saturated with oxygen and the blood has very little.
There is therefore a very large concentration gradient and oxygen diffuses out of the water and into the blood.
As you move along the lamella, the water is slightly less saturated and blood slightly more but the water still has more oxygen in it so it diffuses from water to blood.
This continues until the water and the blood have reached equal saturation.
After this the blood can pick up no more oxygen from the water because there is no more concentration gradient. The maximum saturation of the water is 100% so the maximum saturation of the blood is 50%.
As the blood flows in the opposite direction to the water, it always flows next to water that has given up less of its oxygen.
This way, the blood is absorbing more and more oxygen as it moves along. Even as the blood reaches the end of the lamella and is 80% or so saturated with oxygen, it is flowing past water which is at the beginning of the lamella and is 90 or 100% saturated.
Therefore, even when the blood is highly saturated, having flowed past most of the length of the lamellae, there is still a concentration gradient and it can continue to absorb oxygen from the water.