I've done this through a ethernet router; I found that to get my two WinXP computers linked, I had to have both TCP/IP and netBIOS enabled on both computers. On both, open the properties for the ethernet connection, and it will show what is enabled. (-I had TCP/IP enabled for internet, but had disabled everything else because [for internet use] nothing else should be necessary anyway).
All the how-to pages for setting up Windows file-sharing tell you about needing TCP/IP but I looked for a long time until I happened across one that mentioned you also needed netBIOS enabled as well.
---------
Also--most all ethernet cards will work with crossover cables, but some still don't. Lots of people assume they all do, but if the specs of BOTH of the ethernet cards do not explicitly say that they will work with a crossover cable, then the fact is that they aren't guaranteed to do so. And both need to work, for this to work at all. ......If you are using a crossover cable and have tried everything else, then try using a hub and two regular cables.
~