For filing sharing with Windows, Samba is the answer. Here are a few links that might help:
1 The source of all things Samba: samba.org
2. the online version of O'Reilly's Using Samba
3. The Samba NHF
from linuxnewbie.org. This is written for those who want to use their Linux box as the server as opposed to a client, but it still has some useful info.