Okay, in the recent times; with JIO bringing down the prices of Internet data drastically low; I think it's time to revisit this discussion.
There are two aspects to consider - are you going to consume the media content over and over, and second - are you going to consume it right from the start till end. It applies to songs and videos both.
The modern technology allows for progressive streaming - which means when you watch YouTube or any other video online, it's NOT completely streamed to your computer.
Instead, in order to save the bandwidth, the streaming service provider will load a few minutes worth of data on your app or mobile browser. You might have noticed that if you turn off your Internet, the video still plays for a minute or two and then stops. It doesn't download the video entirely.
This is quite important for both the streaming service provider and you. The 'bandwidth' is costly for both you and the companies. That's why it makes sense to offer only some amount of data in advance to smoothen your online media consumption experience (or simply speaking, listening to audio or watching a video).
Now consider that you want to watch the entire video or listen to the song over and over. In that case, it perfectly makes sense to download the video or audio to your mobile app or any local storage so that you don't have to worry about data exhausting quickly.
The only drawback of this approach (downloading) is that the media continues to eat up space on your mobile or desktop as long as it resides there.
It's not a big problem for laptops and desktops; but on mobile phones, every app is fighting for space; and that means you can't really keep downloading stuff. You'll eventually run out of storage space.
That's one of the main advantages of having stuff stored on cloud.
To cut the long story short - whether you should download files or stream online depends upon how you wish to use it.