It would help to understand that there are a many different 3D model formats, but primarily they can be grouped into 3 types: Nurbs, Polygonal & Solids, and conversion between them is not always possible or practical.
Nurbs are Bezier curves that define a surface. Much in the same manner Adobe illustrator can use bezier curves for 2D drawings, programs like Maya, 3D Studio Max, Alias and Rhino use Nurbs for surface modeling. One thing to keep in mind is that Nurbs surfaces are always open (meaning they can't form an enclosed surface), which also means that by definition, they are non-manifold.
Polygonal surface models are what an STL is, it's similar to a Nurbs in that it's a surface model, but instead of smooth curves it's built from many flat polygons. The more polygons you have the smoother the surface will appear (from a distance), but a curve will never really be totally smooth. However, they are always closed. Blender, Sketchup, Lighwave 3D, Carrara they all handle polygonal models
Solids are exactly what the name implies. The objects are made up of solid geometric shapes. When you draw a cube, it's a solid, six sided object, made of 6 faces and 12 vertices, which means the object has "thickness". In contrast a Nurb Surface is just that, a surface without any thickness. Programs that use solid models are Autodesk Inventor, SolidWorks, Solid Edge and Creo
While converting a Nurbs to a polygonal mesh is usually pretty common, Converting a solid to a mesh is easy. But going from a mesh to a solid object is not. There are some specialized programs that can do this, with varying degrees of success, and some of the high end software like Solidworks will try to analyze and detect solid objects within a mesh, but unless the object is pretty simple, it doesn't really work well.
To print or, 3D print, that is the question...
SD3 printer w/too many mods, Printrbot Simple Maker Ed., FormLabs Form 1+
AnyCubic Photon, Shining 3D EinScan-S & Atlas 3D scanners...
...and too much time on my hands.