Subdivide makes the geometry of your mesh more complex so that you can refine it further.
Subdivision surface leaves your mesh as it is, but produces smoother surfaces by increasing the number of faces at render time. Very useful if not irreplaceable for organic shapes. This should also answer your last question.
Set smooth/solid determines how light is calculated on each face. Solid means one light intensity throughout the whole face which makes the surface look facetted. Smooth means an interpolation of light intensity between adjacent faces which makes the surface look smooth.
Just experiment a bit with the three possibilities and see for yourself. BTW, all can be combined. Actually you almost always have to use a combination to make a good model.