Layering vocals is just taking multiple recordings and syncing them together. :) You can do this in practically any audio software, most commonly Audacity.
Proper mixing employs further audio manipulation to create a more clean fusion of all elements within a track.
But, the first step to making vocals sound good is layering multiple takes. This makes the vocals sound full and well-rounded as opposed to a single flat recording of vocals. It's night and day difference. Try it out some time!