Getting Vista and XP to play nicely on a network is certainly not always a simple task. My situation was: An XP machine with a shared folder I wanted map to a Vista machine on the same network, but a different subnet. I 'think' the following instructions are just a generally good idea if you are looking to communicate between XP and Vista regardless of the subnet. It's one of the first things I do when I reformat.
You have to change Vista's security policy to recognize and allow communications with XP's infrastructure. The local security policies can be found in Control Panel>System and Maintenance> Administrative tools.
Open Local Security Policies and expand the Local Policies folder on the left. Then click on Security Options.
Toward the bottom, double click on Network Security: LAN manager Authentication Level and set it to Send LM & NTLM responses.
It doesn't tell you to restart, but I always have to before it actually takes the settings.
I think you would probably need to do this on the Vista computer if it were hosting the shared folder. FYI, I spend probably 8 hours trying to figure this out...too much time for a 30 second solution!
Also, if it still isn't working try shutting off Windows firewall and testing it. The firewall seems to get in the way when you're on different subnets - even if it says file sharing is allowed through the firewall. If your network has an external firewall it might be OK to leave it turned off...then again it won't be my problem if something goes wrong because the firewall was shut off!