It is instructive to look at the runtime requirements of a .NET-based application. The CLR does have certain requirements on the target platform before any managed application can execute.
The first requirement that must be met is the operating system. Currently, the following operating systems can run .NET-based applications:
Windows 98
Windows 98 Second Edition (SE)
Windows Millennium Edition (ME)
Windows NT 4.0 (Service Pack 6a)
Windows 2000
Windows XP Home
Windows XP Professional
Windows XP Professional TabletPC Edition
Windows Vista
The following server platforms are supported:
Windows 2000 Server and Advanced Server
Windows 2003 Server Family
Other requirements are Windows Internet Explorer version 5.01 or later, MDAC version 2.6 or later (if the application is designed to access data), and Internet Information Services (IIS) for ASP.NET applications.
You also must consider hardware requirements when deploying .NET applications. The minimum requirements for hardware are as follows:
Client - Pentium 90 MHz and 32 MB RAM
Server - Pentium 133 MHz and 128 MB RAM
For best performance, increase the amount of RAM - the more RAM the better your .NET application runs. This is especially true for server applications.
If you want to run .NET 3.0 applications that make use of Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), or Windows Workflow Foundation (WWF) the requirements are a little more strict. .NET 3.0 requires at least Windows XP SP2. The previous list is trimmed to the following:
Windows XP Home (SP2)
Windows XP Professional (SP2)
Windows XP Professional TabletPC Edition (SP2)
Windows Vista (not including IA64 platform)
The following server platforms are supported:
Windows 2003 Server Family (SP1)
Windows Server “Longhorn” IA64 Edition
The minimum hardware requirements also change. They become:
Client - Pentium 400 MHz and 96 MB RAM