I wish I could give you better help but I've pretty well run through the tips and tricks we use where I work to get our customer up and on the Internet (I work tech support for an ISP). The only things that we haven't tried is completely removing the TCP/IP and re-installing it. This is something I've never found neededn with XP but Is something I've done with Win9x on occation to repair connectivity. After a little research into doing this with XP I think It unadvisable as it takes some registry modification to do and the Nut Shell (netsh) commands from command promp accomplish what an uninstall/reinstall do. One other thing is to try the NIC in a different PCI slot to see if that makes the connection.(Thank you SC for the suggestions) The last thing I might try before a complete Reinstall of the OS is force the connection by hard coding the NIC. This sometimes makes a connection work. Instructions for hard coding your connection:
Start/ Control Panel/ Network Connections, right click on the Local Area Connection and select "Properties". Select Internet Protocal TCP/IP and highlight it. Click on Properties. Change from automaticly obtain IP to set IP and enter an IP that is in the range of your modem/router DHCP Server (e.g. 192.168.1.103). Enter the address of the modem/router into the gateway (e.g. 192.168.1.1). The subnet mask should default to 255.255.255.0. Now enter the gateway adress into the first DNS adress and click OK. Click OK onthe Connection Properties and the changes should take effect. Restart the PC and see if that worked.
Other than being sure other PCI devices (sound cad, video,modem) work in the slots a reinstall is the only option left.