Challenge
Integrate rich-client communications into Microsoft Windows* XP applications. This functionality includes the building blocks to add instant messaging, voice and video-conferencing, and application sharing/collaboration capabilities to your application.
Solution
Use Microsoft's real-time communication (RTC) API. The process of adding rich communications capabilities to an application with the RTC API is straightforward. First, the application needs to determine the capabilities of the client communication platform. Once the platform capabilities are known, the application can select the preferred audio and video devices to be used during the communication session. The application is now ready to initiate a communication session with another participant. After a participant is found and added to the communication session, the client application coordinates the capture, compression, and the transmission of data. While on the receiving side, the participant receives, decompresses, and replays the transmitted data.

The following related items provide detail on the process of implementing the RTC API:
This series of items describes the steps necessary to add PC-to-PC RTC communication capabilities to an application. Discussion of PC-to-Phone, presence, and XML profiles are outside its scope.
Source
Integrating Rich Client Communications with Microsoft Real-Time Communications API