In certain BC rivers, fishing is catch and release only, it's illegal to fish with anything but a single barbless hook. I have a whole tackle box full of spoons that have been hacked to death by a pair of side cutters in order to make them legal for catch and release.
When you hook a fish, reel them in normal, but pick them out of the water with a net, don't just fling them onto the dirty shore where they can flop around in the sand and dirt and bash their bodies against the rocks. Grab them gently behind the gills to take the hook out, take a picture if you want one, then submerge them back in the water, head facing away from you, and gently "wave" them back and forth to get some water flowing through their gills. Reeling them in tires them out, so you need to give them a chance to recover before letting them go, don't just toss them back in the water, there might be a chance that they'll just float there and drown. Let them regain some strength and when they're ready they'll simply swim out of your hands and back down into the depths.
The fish will mostly be ok, in fact it'll likely go right back to what it was doing before it got caught: looking for food. It's not unusual to catch the same fish over and over again while fishing catch and release. I sometimes wonder if they get used to being caught, and know they're going to be released so they just bite everything, not worrying about whether or not it might be a hook because they know they're going to be tossed right back in the water even if it is.