First of all, I agree with the answers of marco.cantu and lkessler.
If you want to get a higher level abstraction in a component, I have such a component. You can find it here: RoboMailer
It can perform mass mailing, and can also personalize mail with additional data. It was designed for tasks that way. I use it in a large product that sends a lot of emails daily (polling system with invition system on top). The component simplifies the task of sending mail, so you do not need to worry about mail composition traps, etc. It is also equivalent to send 1 or 20,000 letters. Demo is displayed. In fact, the demo itself is a full-featured mass mail program :)
But it is based on ICS (Internet Component Suite), so you need to use ICS.
source share