How to migrate iTunes from one platform to another and retain links to your songs, even when they are stored remote to the iTunes client, and their path has changed.
Windows laptop with iTunes 8.x. All (most) music is stored on a Samba server mounted at M:\media\mp3, rather than where iTunes wants you to put it. In Linux it's called freedom, in Mac OS it's called swimming against the stream.
Mac laptop with iTunes 8.x and All (most) music is stored on a Samba server mounted at /Volumes/media/mp3
iTunes stores its library in a binary database with an .ITL extension. It also exports from that an .XML file which contains a lot of the metadata from this database, but not all.
On the Mac
Assuming this is a new Mac with nothing useful in iTunes yet
On the PC
In my case the PC is a extracted hard drive plugged into the USB port.
Clean up duplicates
You now have 2 copies of each track from the samba server. Use Duplin to fix that..
The free version only works with duplicates in groups of 40 at a time, which is painful if you have thousands of tracks. So, buy the full version. This Mac world is so different...
Retaining playlists through this seems to be a bit of a pain, but it's "possible". I'd just dump them.
Be sure to watch the video howtos on the Duplin site for tips.
p.s. I hate iTunes.