The main difference between paint and stain is that paint sits on top of the surface rather than seeping into the surface. Paint also needs to be painted onto surfaces that have been primed first, while stain does not need a primer. Typically, stain is only applied as one coat whereas paint also takes more time to apply because it needs several coats of application.
It is important to note that once a surface has been painted, it cannot be stained unless all the paint is stripped down the bare substrate and prepped properly. A painted surface is in essence protected and stain will not penetrate the substrate (ie., wood) unless free from all previous paint and chemicals. Also, new wood can be painted, but must cure for a certain period of time before staining can even occur.
Just as interior and exterior paint comes in various colors and sheens (flat, matte, satin, eggshell, semi-gloss, gloss, etc.), both interior and exterior stain comes in a variety of colors, sheens (flat, matte, satin, etc.) and opacity (clear, semi-transparent, solid, etc.) and there are many different finishes that can be applied afterward to get a desired look. Wood stains add color to natural wood while finishes seal the wood and protect it from moisture. Examples of finishes are lacquer, polyurethane, varnish, wax, and shellac to name a few and there are both water-based an oil-based versions well.