Shared memory jsem ve Windows nikdy nepoužíval, jedná se v kontextu Windows o značně neobvyklý konstrukt.
Multithreaded aplikace se ve Windows psaly (před .NETem) v C++. Díky takovým těm věcem typu objekty, instance, encapsulation, exceptions apod je to praktičtější, než ANSI C.

