Compound Win32 Synchronization Objects: Describes strategies to combine the Win32 synchronization primitives into more complex synchronization objects. It presents several solutions for implementing advanced synchronization objects along with a comparison of how they perform.
Multithreaded Programming with Win32: This book describes techniques for designing and implementing multithreaded software applications.
Multithreading for Rookies: Focuses on some practical applications of Win32 multithreading.
Pelt: POSIX Wrapper for Windows Threads: This package provides a POSIX layer on top of Win32 threads to facilitate porting of Unix applications to Win32 platforms. [Open Source, LGPL]
POSIX Threads (pthreads) for Win32: An implementation of POSIX pthreads for Win32. [Open source, LGPL].
Strategies for Implementing POSIX Condition Variables on Win32: This article explores various techniques and patterns for implementing POSIX condition variables correctly and/or fairly on Win32.
Win32 Multithreading Made Easy: Describes an object-oriented framework for Win32 that encapsulates threads.