Maybe the mods want to break this discussion out; but as a resident millennial I will say the NBA is very, very popular with people under 30 and the MLB is more of a niche sport. As an example, just yesterday I was playing basketball with a bunch of other 20-somethings and while waiting to get into a game, I was looking at the Sox game and said something like "Man, Sale is really mowing them down today". The guy sitting next to me said "Whose that?" which surprised me, but then a quick survey of the half-dozen guys around me resulted in only one of the other guys actually knowing who Chris Sale is. And this was in Boston. Of course, if I said something like "Eric Bledsoe is going off!" everyone would know who I was talking about. Part of that is circumstantial; if I was playing beer league softball instead of basketball, I would have probably gotten a better a response; but still.
I think a part of that is the NBA, whether it is by coincidence or on purpose, is just so much more culturally relevant for young people than MLB. The fundamental aspects of basketball have given the league some inherent advantages, the natural style of the game of basketball that celebrates the individual is perfect for the way young people consume media. The NBA has been way ahead of the game in terms of social media, and since basketball generates great highlights, it's perfect for the Youtube/Twitter/Instagram/Snapchat generation. Another thing is that basketball through pop culture is just so much more relevant than baseball, whether in music, fashion, etc. Hip-hop not just becoming mainstream but dominating the music industry, has certainly helped.
As an aside, I feel like when I joined SoSH eight years ago, I was one of the youngest members. Today, at 24, I still feel like I'm one of the youngest members. Maybe I'm wrong about that but there just are not a ton of people my age who are that passionate about baseball.