I wonder what is the difference between Windows Server & Windows Azure for Web Hosting? and which is better?
Windows Azure provides multiple instances of a Windows Server (in the cloud) and will automatically start a new instance, if one fails.
Better depends on your requirements.
Before you commit to something, you should give it a try. Azure provides a free trial. Azure is comparable to AWS, amazon web services.
With these cloud services, you are paying for your usage (bandwidth, cpu, etc...), not really paying for single instances of servers.
Windows server gives you a single server running Microsoft Windows that you can run multiple web sites on with IIS or other applications. Windows Azure gives you a host server that allows you to run virtual Windows systems each of which can host multiple sites. You might consider it to be like comparing a single Linux installation on a server to running VMware (or Xen or Oracle Virtual Box) and running multiple virtual operating systems under one of them.
For Windows Server you only need a couple of processors and around 8GB of memory however with a host system you will need something with multiple processors (at least on physical processor for each virtual host) and enough memory for each of the hosts you will be running to have at least 4GB of memory.