I buy CDs because many artists are unavailable on streamsites, or have told me they cannot survive on the compensation from that business model. Among those stating the latter is Maria Schneider, a major, multiple Grammy-winning jazz artist.
However, it got too hard to find a CD when I wanted to hear it (at least 5 places in the house have over 100 CDs). Now I rip them before I lose them, put them on a server, and stream from there. I’ve dabbled a bit on the commercial sites, but I’m used to choosing what I want to listen to, so this works best for me and gets more money to the artists I want to support..
As some have mentioned here, you can also purchase permanent copies of digital music. This can sometimes result in higher fidelity & additional non-musical content. Through artistshare.com, you can sometimes even participate directly in funding and observing the creation of new works!