If you want your web available to the outside public:
Yes, you need a server such as Windows Server 2003. If you don't want
Windows based you can run Apache (free) on a Unix based machine.
Yes, you need the .NET Framework downloaded to the web server if you want to
do .NET web sites. You can either write in 1.1 or 2.0.
Yes, you need to run IIS on your Windows Server. If you use 2003 Server it
should automatically come with IIS 6.0. If you use 2000 Server it will be
IIS 5.1.
Yes, you need SQL Server if you want to pull data from a database for your
web. If you are using a Unix based machine, you can use MySQL (free).
If you go the Unix based route (to my current knowledge) you can't use .NET,
you use JavaServer Pages (jsp).
The following are not free:
Windows Server software
SQL Server 2000 or above.
ASP.NET 1.1/2.0 capability comes with the .NET Framework download, which is
free. Remember .NET is code you write and can use Notepad or any other ASCII
text editior; a C# and VB.NET compiler comes with the .NET framework, which
will compile C# and VB.Net applications. If you want to write .NET code with
error checking and an interface, then you would purchase Visual Studio 2003
or above.
Depending on your data and the number of hits you expect your site to
recieve you can use an MS Access database, however this is not recommended.
FrontPage extensions are needed only if you will be creating a website using
FrontPage, otherwise you don't need this. Frankly, I would not recommend
Frontpage
for any .NET coding. It has a tendency to break your pages, even with the
newest version.