I am setting up a kiosk that will allow a user to view a client's catalogue and let that user send an email of some item or other to themselves. I'm hosting a windows-based web site, so I want the client to use an email server on the kiosk. Should I set up my own email server (non-IIS) and if so, what software should I use? If not self-hosting, any recommendations as to what i should use?
This question is extremely broad, so you can expect to receive only very general advice.
If you are hosting a windows-based website then why not use the windows SMTP service running on that server?
You may still have a whole lot of network infrastructure decisions you need to figure out, but my advice is start simple with something well-documented like the Windows Server SMTP service, then as you gain a deeper understanding of your operating environment restrictions and requirements you can start to ask more specific questions.
If by 'catalog', you are planning to set up an E-Commerce application of some kind, any good shopping cart program these days has an "email to a friend" type of feature, so you can easily use this feature to allow the user to email the product to themselves.
If you were not planning on using a shopping cart program, you might want to consider it, as for the same amount of work/trouble you'd have an online shopping cart (which of course, can be used as a kiosk) and now or in the future you can enable it so clients can shop directly off the web site.
Normally in the admin area of the shopping cart, you would be able to configure how mail is sent. Some support smtp authentication, which means you can setup any email account to send through (you'd enter the email address username, password, and mail server settings)
A good shopping cart program for Windows is aspdotnetstorefront: http://www.aspdotnetstorefront.com
Hope this helps