Flickr, Photobucket etc. are free..But make sure you're saving your images for web though otherwise you might lose some colour due to the internet browser not supporting it.
For a full blown portfolio, I would use a template and provide a link to the images themselves. That way you can showcase your work in a more orderly manner.
Flicker, Squido, DeviantArt, etc. You just need to search in Google and you will find a lot free platforms
Hi, Again I am a little late to the party. I think that everyone has covered everything. But if you are looking for full control and to have it easy for people to contact you directly then I would get a hosting + theme and host it yourself. Will not cost you much money and will show that you are willing to put some time and money into and care about your work rather than sticking it onto free website. Just my two pennies worth.