There are actually several ways of doing this depending on the capabilies or lack thereof at your host.
1. park second domain on the fist - This is really only a single site that can be accessed from either domain being entered.
2. Add-on Domain - Some domain control panels and hosts allow "add-on" domains. This basically parks or recirects the second domain on a directory within the first domains alloted space. i.e. domain2.tld when entered goes to domain1.tld/domain2directory/. This is generally done through the DNS entries and is transparent to the end user.
3. Use a redirect of the second domain from third party DNS (maybe the registrar or zoneedit.com) to send to a directory of the first. This would give web use, but probably not email or other advanced uses. With a zero size header frame it can be somewhat transparent and is often called "cloaking" when done this way.
3. Some advanced ways of doing it are using redirects within the .htaccess file. to complicated to explain here. (search ".htaccess redirects") http://www.htaccesstools.com/forum/about76.html
4. HTML Meta redirects - non transparent, but can effectively redirect hits from a small or free host to a another or directory within another with more space.
5. There are also some cgi and javascript scripts that can redirect the second domain for you to either directories or to subdomains.