Linking mac's linux and windows clients CAN and sometimes IS a nightmare, although not impossible.
First, I'd make sure that the Workgroup or 'domain' your business is on - is set on ALL PC'S you wish to connect to the network for file sharing.
Ensure they also have it enabled in the firewall and in their options. In MAX OSX, there is an option for: Enable file sharing, and in the firewall you can exclude cirtain processes like SAMBA, etc.
You need CUPS or something alike for printing, you may also use SAMBA for that too.
In windows, you need to disable the SP2 firewall, and enable file sharing on a folder.
For printers in XP, rightclick and go to the sharing tab and select share printer.
Fill in the details, and remember the HOSTNAME or IP address and the printer name, and then setup a route to the printer in MAC, like 192.168.1.1/myprinter_name
Sorry this is a little 'breif', if you do need more help PM me, by clicking the yellow envelope and I can answer individual questions much quicker.