You need webhosting to make emails with the domain, they have the service, there are a lot of free webhosts out there you can use, but they can be VERY unreliable. You can get the domain for cheap prices like Sanctuary posted, these can also be unreliable and may screw you over in some way or another..
After you have your domain and webhosting, your webhosting should tell you the nameservers you should point your domain too, afterwards, login to your webhosting account and make an email account. But you will have to sign into your cPanel everytime you want to access the mail, if you don't want to do that, you can make an email forwarder which will send all mail that goes to an email address of your choice to a pre-existing email, such as a gmail or hotmail.
Some good hosts will actually have spam assassin and other good spam blockers that make sure no spam go through your system, should eliminate any spam.
Hope this helps.