O WPF permite a criação de interfaces ricas com alto grau de personalização através do XAML e do Model-View-ViewModel. Ele separa a interface da lógica, é independente de resolução e permite data binding com fontes externas. O WPF também pode ser usado para aplicações web através do XBAP.