There is a hybrid approach -- run a local mail server for receiving mail, and configure your Gmail account set the "From:" address to your domain, and forward any mail to Gmail to your domain. This way you are still mostly in control of your mail, but with the sending reliability of a major service.