با به میان آمدن وب سرویس ها، که شامل پروتکل هایی برای تبادل اطلاعات بین دو برنامه کاربردی هستند، تغییرات چشمگیری در سطح پیاده سازی نرم افزار ها ایجاد شد. برای مثال توابعی که وب سرویس ها هم اکنون فراهم می کند از امنیت، هماهنگی بین تراکنش ها و یک تبادل قابل اعتماد برخودار هستند. با این حساب اگر تغییراتی در وب سرویس ها ایجاد شود، این تغییرات به تمام ابزارها و تکنولوژی هایی که برنامه نویسان از آنها استفاده می کنند نیز منتقل می شود. شالوده ارتباطی ویندوز (WCF) برای فراهم کردن یک محیط مدیریت شده برای محاسبات توزیع شده، قابلیت جابجایی وسیع و پشتیبانی مستقیم از سیستم های سرویس گرا طراحی شده است.
WCF، کار برقراری ارتباط بین برنامه های کاربردی مختلف را در یک سیستم شی گرا، به سهولت انجام می دهد. WCF با ارائه ی یک معماری چند لایه، مدل های مختلفی از طراحی سیستم های توزیع شده را ارائه می دهد. به شکل پایه ای، معماری WCF تبادل پیام غیر همزمان و مستقل از نوع داده را فراهم می کند. بالاتر این پایه، پروتکل هایی قرار دارند که امنیت، قابلیت اعتماد، تراکنش های تبادل داده و گستره ی وسیعی از پروتکل های تبادل داده و حتی رمز نگاری قرار دارند.
مدل برنامه نویس برپایه نوع(typed programming model) (یا همان مدل سرویس) برای طراحی برنامه های توزیع شده طراحی شده اند تا به این طریق طراحان ترکیبی از وب سرویس های ASP.NET، فریم ورک .NET Remoting و سرویس های Enterprise را در اختیار داشته باشند. این مدل سرویسی امکان نگاشت بین بین مفاهیم وب سرویس و کدهای فریم ورک .NET را فراهم می آورد. این مدل به صورت کاملا انعطاف پذیر و قابل توسعه، پیام های سرویس ها را به صورت زبان هایی مثل C# و VB پیاده سازی می کند. در این مدل تدابیری اندیشیده شده است تا داده ها به شکلی منتقل شوند که اتصال و یکپارچگی آنها در حین انتقال از بین نرود. این مدل همچنین با تکنولوژی های فعلی سیستم های توزیع شده تعبیه شده در فریم ورک .NET ، مانند MSMQ، COM+، وب سرویس های ASP.NET، WSE و غیره سازگاری کامل دارد.