The main difference is the size of the pigment/colorant used in the two.
Stains are essentially very thin paint. The pigment is larger and use a binder so they tend to stay on the top of the surface. The color is deeper and more lightfast because the larger particles can absorb & reflect more light but they can also be more easily removed (on purpose or accidentally) due to their weak penetration. The main drawback is that because it is a surface coating of sorts, it can "fill in" some of the leather grain's finer details. This gives a more uniform color surface but when layered on can take away from the natural look & feel of the leather.
Dyes penetrate deeper due to the fact that the colorants (pigmentation material) is much smaller than those used in stains so they can work their way further into the leather's cell structures. The drawback is that dyes tend to need many more coats to achieve a similar color depth as the colorant is absorbed & penetrates and dispersed throughout. Dyes are transparent by nature so some of the underlying materials color will tend to come through (this is why leather dyed with just black dye can have a golden tone to it). Dyes don't build up, they simply darken as more colorant is penetrates the cell walls and therefore can take more abrasion than stains and doesn't build up on the surface so the nature feel & look of the leather grain remains.
Short version:
Dye:
Pros: deeper penetration, better durability, no surface build up, can be blended with finishes that use the same carriers/solvents to create tinted finishes, longer shelf life
Cons: not as lightfast, can be more difficult to clean up, less intense colors, can leave a residue (see also USMC Black), longer drying times
Stain:
Pros: more intense color, better lightfastness, generally easier to clean up, blends/hides imperfections, generally dry faster, little to no residue/rub off
Cons: very little penetration, hides/distorts grain patterns, can not be used as a tint, shorter shelf life due to pigment/binder separation, less durable (scratches show underlying material easier)