They work by running special server software that makes multiple "virtual servers" that each look like a dedicated server.
This is done using software like Virtuozzo, UML (User Mode Linux), Ensim, or other such tools. Google on these for more info on how they work. JVDS in particular uses UML.
Each server looks and acts to a user like it's a full, dedicated server, with full root access in most cases, although some of the systems won't let you do extreme things like compile a new kernel.
As far as "if you should", well, that's a huge vague question that depends on what your needs are and why you think you need a VDS.
if after reading about the above packages you want to discuss specific VPS hosting uses, you will probably find slightly more articulate answers in the Dedicated Hosting forum, since that's what a VPS/VDS resembles.