Photographic gear, of course ;)
If you decide you absolutely need to reduce noise of a particular difficult image, go for it, Neat Image or Ninja Noise are/were great for that. But remember that there is visual information on grain/noise. It is a kind of chemical/electronic mechanism that overimposes on the image, but does not erase it, just makes it less clean. So, if you reduce grain/noise you'll also reduce visual info and you'll loose detail.
Learn to use those tools ... that is not what I want to talk about. I want to share some dirty tricks :)
My camera's sensor is really noisy, darks are awfull. Cameras produce more noise under low light situations or in underexposed images, it's a natural thing of the digital world, there will always be noise and when you have less light you have less "signal" and the ratio between signal and noise will decrease creating noisy images.
This is why it's generally better to overexpose, just be carefull not to blow those highlights, but keeping the histogram balanced to the right side is a good thing.
Point 1: Working against noise begins when shooting!
Now, if you have large homogeneous areas on your images that is mostly where the noise will standout. That could be a huge blue sky, the dark night sky, or even large unfocused areas around your subject. (If you are into macro photography like I do you'll have lots of this) Those are the places where noise reduction has more impact. And those are also the places where there's little or no visual information, hence, in theory, you can apply all the noise reduction you want because there's no detail to loose! But software I know of don't have this option or don't do it right. (This is also an hint to software image programmers ;) )
Hint: skies are usually very easy to select using the magic wand tool. Woopps, watch out for those clouds, you can't select them!
It's just a starting point, but not that good. Exact selection may be hard to get and hard selection edges will show a noticeable difference in image texture that might ruin the picture. We can "feather" the selection but just that will result in some detail lost (noise reduction) out of the kill (noise) zone. Contract your selection a bit before feathering. Values I might use, contract by 10 and feather by 5. If you magnify the image to 200% or 300% you'll notice the gradient of noise reduction around the selection, but being close to edges where you have details with lots of visual information it's perfectly negligible. Probably dificult to see, even if you're looking for it, at 100%.
Another issue that relates to what comes next, the out of focus areas. Some lenses' optics just create ugly out of focus details. They can turn white (out of focus) lines or bright spots into double "blurs" making this part of the image look fuzzy, sometimes like if your hand was not steady, just for the out of focus!
Wait, don't go blurring everything away just yet! Even inside a selection you'll always "blur" some details out of the selection into it! If you blur too much or around hard edges you'll create halos. Same as before aplies, contrat selection, feather and blur just a little, then contract more and blur a little more, and again ... and it should be enough. A clean, halo free, image, well not always, but things are definitely looking better. Gaussian blur values I use are between 1 and 3, very small amounts.
Another Blur problem might be banding! If you're working on a very neutral area, or using mostly only one the color channels, you might start seeing some banding! Blue skies easily create this if you overdo your blurring. If you can't avoid this effect in any other way, don't worry, just add some noise!
Yeap, after using blur to reduce noise, add some noise to create a kind of dithering effect and eliminate banding! But this is a different noise, it's photoshop created, very fine and smooth noise. I use gaussian noise values from 0.1 to 0.6. You might have to type those 'cause the slider won't get to these so small values. Also try the other options of this tool, some are better for this situation and some for that. Sometimes it looks like magic, your skies loose the banding effect and become more natural!
A little back now, about making selections.
Generally I use the line selection tool. There's no need to be very precise, just draw your selection a few pixels inside of the noise reduction area (you won't need to contract later) and then feather it.
Now imagine you have an image where the size of out of focus is realy large, but divided into thousands of little areas! Like a plant isolated with DOF against an bunch of other plants. The selection process might be a nightmare!
Do all your other processing on the image, create a Snapshot on your history folder, use whatever noise reduction technique you want all over, and then use the history brush tool (with a soft brush) to paint your original detail back into the picture.
Duplicate your layer, hide the one above and apply noise reduction on the other (I'll call it background). Make the first one visible again and apply a hide all layer mask. Then select the mask, a soft brush, and paint this untoutched layer back again on top of the background.
I prefer one of these last ones because: I can easily revert any actions, I can paint any level of grey to mix the noise free and original layers. I can even dessaturate or darken/lighten a little the background to smooth a too much cluttered back scene or to make the subject really stand out! (realy dirty trick!!)
When everything is ready, convert to 8 bits (I have been always working with 16 bits images), maybe sharpen a little and ... noise is back! Carefull with that sharpening! If you realy need it, set the threshold value to a little more than default (I use values around 1) and noise won't be back so easily. There are lots of other ways, but this is the simplest way I know of sharpening noise free!
Sorry for so much text ... go on, have fun :)