I'm creating a website where users will be able to upload various images when creating a new page on my website. What service does Microsoft offer to host many user uploaded images. Would a Blob suffice? If so, if I were to add a CDN, would it be worthwhile? From what I understand, a CDN copies the images on various servers. If my local server has 1 million images, would that mean all the other locations will have 1 million images as well? Would that be very costly?
Blob storage is the perfect place for images in Azure.
CDN is great for when your images are at least somewhat static and will be viewed more than once.
With CDN you do not pay for storage costs (on the CDN), but instead for transfers out of the CDN - http://azure.microsoft.com/en-us/pricing/details/cdn/
I should also mention that if you're using Azure and Blob storage is your primary facility for storing images, Azure's CDN does not have to be your primary CDN - and any CDN will work. CDN's are pretty commodity service these days.
HTH