The folks over at OSNews.com have posted a good tutorial on how to get Samba 3.x setup on your heterogeneous networks. I can forgive them for the ridiculously small font-size they use for the code (even small than it is here).
Recently I got the opportunity to setup a new lab for a small school. The server runs Linux and the workstations run WindowsXP. There are 3 levels of access on the workstations (admin, teacher, and student) and security on the workstations is based on Windows policies applied at logon.