I switched to postfix with my own server a while ago. I have been happy with it, and the documentation
is fairly good. There's also some documentation in the CentOS wiki
, although it's for CentOS 5.
A word of caution -- if this is your first email server setup, please be prepared to read
that fine documentation. I'm also told that there are web search engines which may help finding helpful pages in case you run into problems. Some of us are unwilling to help newbies if the said newbies don't even try to find a solution to their problem themselves. Some understanding of the related protocols (SMTP primarily) would also be useful. You will also need to know some basics about domain name system (DNS). You will need to have your own domain, and you'll need to know how to set that up. Using your ISP's or registrar's name servers is usually the easiest choice here.
Postfix takes care of sending and receiving email to/from other mail servers. For reading the emails with your preferred email client, you will (in the most common situation) also need an IMAP server. Dovecot is a common choice for this task.
The point where things usually become rather difficult for beginners is when a need arises to set up something to combat spam (blacklists, greylist, content-based scanning by spamassassin) and viruses (amavisd-new, clamav).
In addition, as was commented earlier in this topic, doing this on a residential connection will probably end up in tears for two reasons. First, you will (practically) need to have a static IP address. Most residential net connections use dynamic IP addresses. Second, ISPs tend to block in/outbound SMTP for security/antispam reasons.
If you have a virtual machine from some ISP, those can usually be used for email servers. When in doubt, ask your ISP.
If you want to do this for learning stuff, sure, go ahead. If you'd really rather not worry about your emails too much, use some other provider's email.