Email List Hosting: Self Hosted versus Outsourced?

I use an outsourced email list hosting service for a very small list, but I have been wanting to put a lot more promotion and effort into building lists on my various websites. Pricing for a small list is ok, but when I get into the numbers for potentially large lists the costs are quite significant. Through some services, that provide pricing info for this level of emails on their websites, just sending a single email to opt-in subscribers on one of my forum sites would cost in excess of $1,000. Monthly cost for unlimited emails sent to such a large list would be a bit more than $1,000 per month.

So, if I’m going to do this, I am considering to run the email system myself. That way I don’t need to worry about one day having $5,000 to $10,000 monthly email list hosting bills if by some chance I succeed in growing my list into the millions (which I could probably do in a few years with the traffic on my sites). I also will soon have the excess server capacity needed to host this myself and would be able to grow with it, which would be a much better option than taking on additional costs to outsource the hosting (as money is really tight at the moment).

Managing the server, email list management software and other hosting related issues I would be able to handle myself.

What are the pros & cons of self hosting versus outsourced hosting for email lists?

What are the unforeseen issues that I might face and which I should be prepared for if I go the route of self hosting large opt-in email lists? Is there anything that ultimately makes self hosting large lists to be more expensive or significantly less effective than paying for a list hosting provider to do these things?

Do not underestimate the scale of such an undertaking! It sounds pretty simple at first, but it’s not. Not really.
The biggest problem is to prevent being seen as spam. To start off you’d probably want to make sure your domain uses SPF and DKIM, but that’s just the start.
You’d also need to think about throttling, i.e., don’t send to many emails to a host in a short amount of time. For example if you send more than x emails to, say, hotmail within y amount of time they might put you on a blacklist. Getting off such a list is not easy.
The drawback of this is that the amount of emails you can send from host is pretty limited. In order to increase sending speed you could add more IPs and do a round robin, or some other strategy, but stuff like this gets pretty hard pretty fast.
Then there’s the issue of handling bounces; you need a way to find out why the email bounced. Some may be because the email doesn’t exist anymore, in which case you’d take them off your list. But not all bounces are errors; for example you might get vacation messages, or receipt confirmations (some people automatically send those, don’t ask me why …)
You’d also want a system in place to get notified by the bigger providers like gmail and hotmail when someone marks your mail as spam, so you can take them off your list (I don’t know how to this, but I’m fairly sure I read once from a big email sending company like CampaignMonitor that they do this).
And of course the rules change all the time, so you really need to keep up with stuff, which might take a lot of time.
Of course if we’re talking the volumes you mentioned in your post it might be worthwhile because the lists are so big, but in general I find that the offer the big guys like CampaignMonitor, MailChimp, et all make can’t be beaten.