Hardware is KEY.
You must have the BEST.
I am here to tell you that ITS ALL LIES. Fed to us through not just the media but big businesses and other corporate goons, bent on taking us for as much money as we can. The truth of the matter is that unless your running windows 7 ultimate packed full of processor heavy programs, you only need the most minimal of hardware setups by todays standards to run a server and even then it will most like be underused.
The key is matching the right hardware with your needs and then managing the costs. I bought a Pentium 3 computer with a standard Gigabyte motherboard and 2GB RAM. It came from a previous owner via ebay, without any issues, And I have never had a problem with it. Buying a second hand computer (or recommissioning a spare/rundown computer) is a great option. The important thing is that for most purposes the most simple setup is the best.
If you need a more robust server, perhaps you also want to serve content to the wider internet or you’re a small business serving 10 or 15 computers and point of sale machine, you may consider upgrading slightly. I would suggest purchasing a computer that has a CPU capable of supporting 64bit architecture and using at least 4GB RAM. The most common cause of a slow server (or computer) is not enough memory, and as such you must make sure that you upgrade the RAM if you feel that you will need it.
If you cannot find a hardware setup that is suitable it may be an option to build your own server. While it is beyond the scope now, you will basically need a case, CPU, motherboard, RAM and any peripherals need for setup. The option is good for getting exactly what you want, however don’t assume that it will be cheaper because you will struggle find prices below retail value unlike the major suppliers.
To sum up. For a home server – cheap is good, it gets the job done. Ebay is your friend, your friends are your friends and fliers, community bulletins and posters as well.
Memory is the clincher for a home server. Don’t overdo it, you don’t need 16 GB, just make sure you don’t run out (start with 2GB and upgrade if necessary unless you feel you absolutely will need more.) (you only need 256/512 KB for a stable Ubuntu server).