For the average marketer, doing both makes the most sense.
You can use social media to build an email list, then follow up with email marketing.
I personally just buy 3rd party data or I get rev-share data (which is data that I get for $0 upfront costs and then I split the revenue from sending it with the data providers) and do little when it comes to building opt-in lists. This is what I have been doing for the past 16 years. However, I heavily promote PPL offers (pay per lead...lead generation) offers, so acquiring 3rd party data is much much cheaper and scalable. You have to keep in mind that in the end, I'm monetizing data, which is really more of a business model rather than a traffic generation strategy.
While I am far from an expert, I would look into learning facebook ads. They really have great targeting / retargeting capabilities. This is where I spend most of my free time learning. As I have no doubt it will pay off substantially. Which for me to pursue is a big deal, because I will rarely ever go outside of the email industry.