You can use whatever service provider you would like and always check with your domain registrar if they offer this service in a package.
1. Go to Namecheap.com (or any other domain registrar) and register a domain and email to use for your website.
2. Find the MX records from the provider so you can update them in your CloudFlare account
*If you currently aren't using CloudFlare for your domain DNS please get your domain set up on CloudFlare now. To do this watch this tutorial.
3. Go to your domain with your private email attached and click MANAGE
4. On the next screen, you will be presented with the MX records as displayed, you will need to add all these records to the CloudFlare account that you use for this domain
5. Log on to CloudFlare and navigate to the DNS tab on your domain
6. Add all the records that NameCheap has provided for you to enter
7. Go back to NameCheap and set up a mailbox. Give the mailbox a name and password and click Save Changes
8. Go down to where you see your mailboxes and from the dropdown menu click Open Webmail. Alternatively, you can also go to privateemail.com and log in from there.
9. Add the custom email you just set up, example [email protected] and also use the password that you set up and log in!
*DO NOT add any symbols in your password. It will still allow you to create a password when you have symbols but then won't let you sign in. All you have to do is go back to the drop down menu where you went to go to your webmail and there will be an option to change password, create a password with no symbols and click change and try to login in once again
10. Send a test email to make sure everything is set up properly