Firstly, do you already have network cards in the two computers?
If you do, look and see what plug they have - either round or rectangular. Hopefully rectangular as this is what I set up at home. (Sorry for the non-technical language btw)
If not, then you need to get two network cards and install them. I think it's easiest to use 10/100 Base T cards (10 is cheaper than 100, and more than adequate if you just want to transfer HTML pages)
You'll also need to buy a Cat-5 cross over cable. This will allow you to connect the two computers without buying a hub.
As for software, you shouldn't need to buy any. Once you've got the cards installed, you just need to set up IP addresses etc. To do this, you should set the IP address on the linux machine to 192.168.0.1 and on the windows machine to 192.168.0.2 Set the subnet mask to 255.255.255.0
(Do this on your windows machine by right clicking Network neighbourhood and then going to properties)
Hopefully this will get you started. The explanation is getting a bit involved, so I'll put up a web page with full instructions tomorrow, and post the URL.
Also it would help to know what distribution of Linux you're using, and what version of windows.