From what I've heard to be able to play two or more sounds at the same time, the sounds must be loaded in to multiple threads.On the documentation for PlaySound() I haven't seen anything about this, can some one tell me how to do that.
You have not read the documentation carefully
The specified sound event will yield to another sound event that is already playing in the same process. If a sound cannot be played because the resource needed to generate that sound is busy playing another sound, the function immediately returns FALSE without playing the requested sound.
If this flag is not specified, PlaySound attempts to stop any sound that is currently playing in the same process. Sounds played in other processes are not affected.
If the flag is specified then the specified event yields if a sound is already playing in the process. If the flag is not specified then PlaySound stops any sound already playing in the current process.
It appears that, just as it did last time I used it in the days of Windows 3.11, PlaySound can only play 1 sound at a time in a given process.