I write this article especially for people who are new to web hosting. This is why I will only talk about the basic needs (in a shared hosting environment): space, bandwidth. Most of the people looking for advanced features (scripting, databases) already know what they want/need anyway.
So let's start with the space. Web space (disk space) is the amount of data you can store on the hard disk of the web server. Each web hosting accound comes with a certain amount of space, usually over 50 MB and less than 1000 MB.
Obviously, the amount of needed space depends on the size of the website. Most websites are composed of html (text) pages with a few images (gifs or jpegs) or even a little bit of Flash animation. Text is very economical; it occupies very little space. Images and flash are more expensive; they require a lot of space. If you're new to the web you might think it's great to have a lot of colorful images to make your website really beautiful. Don't make this common mistake!
Your aim should be to say as much as you can on a page while maintaining it's size under 50-60 KB including images. The reason? There are still lots of people using slow dial-up connections of under 56 Kbps. For them a 150 KB will take more that 21 seconds to load. A 60 KB page will take more than 8 seconds to load. That's still a lot of time! A good page size is under 30 KB. A maximum page size is 50-60 KB.
Considering an average page size of 30 KB, you can put approximately 33 pages on 1Mb of space. If you have 10 MB of space available, you could host 330 pages. I only wish I had so many pages to put online. Don't worry, I'm working on it!
The idea is this: unless you run a busy forum your needs for space are likely to be rather modest. Just keep in mind to achieve an average of 30KB/page and you should be more than fine even with 10 MB of web space.
Bandwidth is the amount of data that you're allowed to transfer per month. It includes all uploads and downloads regardless of the protocol used (HTTP, FTP, POP etc.). Bandwidth depends very much on the average page size, but it also depends on the number of visitors your website will have and the average number of pages they visit. For an average page size of 30 KB, 20,000 visitors per month and 3 pages per visitor your website will need about 1800 MB (1.8 GB) of bandwidth per month. Most low cost hosting packages include that amount of bandwidth. Not to mention that 20,000 visitors per month is only a dream for most websites. Most don't even have 2,000 visitors per month.
I took you through all those numbers just to give you an idea how to estimate your needs. If you're just launching your website you will not need neither a huge amount of space, neither a huge amount of bandwidth. For 99% of people a hosting account with 10MB of space and 1Gb is more than enough.
Conclusion: Unless you have reasons to believe that your website will definitely have lots of visitors and unless you'll offer movies or music for download (legally of course ), I see little reason for you to worry about space and bandwidth.
Just make your own calculations and also try to make sure that the host you choose allows account upgrades. That is to make sure you will be able to get more space and/or bandwidth if /when you need it without going through all the trouble of changing hosts.