Features and technologies for Windows apps

No matter what type of app you are building or device you are targeting, Windows supports many features that are key building blocks for important app scenarios. Some of these features are exposed to the Universal Windows Platform (UWP), Win32 (Windows API), and other app platforms in different ways. The following articles help you understand how certain Windows features are supported in different app platforms and how to get started using the features in your code.

This article provides a tailored list of articles to read more about how you can access important Windows features and technologies in the UWP, Win32 (Windows API), WPF, and Windows Forms app platforms. For complete information about the development features of each platform, see the following resources:

Key Windows features and technologies

The following sections highlight several important Windows features and technologies that enable you to deliver modern and deliver compelling experiences to your customers.

Windows Ink

Surface Pen

The Windows Ink platform, together with a pen device, provides a natural way to create digital handwritten notes, drawings, and annotations. The platform supports capturing digitizer input as ink data, generating ink data, managing ink data, rendering ink data as ink strokes on the output device, and converting ink to text through handwriting recognition.

For more information about the different ways to use Windows Ink in Windows apps, see Windows Ink.

Speech interactions

initial recognition screen for a constraint based on a sgrs grammar file

final recognition screen for a constraint based on a sgrs grammar file

Windows provides many ways to integrate speech recognition and text-to-speech (also known as TTS, or speech synthesis) directly into the user experience of your app. Speech can be a robust and enjoyable way for people to interact with your app, complementing, or even replacing, keyboard, mouse, touch, and gestures.

For more information about the different ways to use speech interactions in Windows apps, see Speech interactions.

Windows AI

Windows AI

We offer several different AI solutions that you can use to enhance your Windows applications. With Windows Machine Learning, you can integrate trained machine learning models into your apps and run them locally on the device. Windows Vision Skills allows you to use pre-built libraries to accomplish common image processing tasks, or create your own custom solutions. DirectML provides low-level, DirectX-style APIs that let you take full advantage of the hardware.

For more information about the different ways to integrate AI in Windows apps, see Windows AI.

Features and technologies by platform

The following sections provides useful links to learn more about how to integrate with core Windows features and technologies from our main app platforms: UWP, Win32 (Windows API), WPF, and Windows Forms.

User interface and accessibility

UWP Win32 (Windows API) WPF Windows Forms
Design

Layout

Controls

Input

Tiles

Visual layer

XAML platform

Launching, resuming, and background tasks

Windows accessibility

Desktop user interface

Desktop environment and shell

Windows controls

UWP controls in desktop apps (XAML Islands)

UWP Visual layer in desktop apps

Windows and messages

Menus and other resources

High DPI

Accessibility

Windows in WPF

Navigation overview

XAML in WPF

Controls

Visual layer programming

Input

Accessibility

Create a Windows Form

Controls

Dialog boxes

User input

Windows Forms accessibility

Audio, video, and graphics

UWP Win32 (Windows API) WPF Windows Forms
Audio, video, and camera

Media playback

Visual layer

XAML platform
Audio and video

Graphics and gaming

DirectX

Direct2D

Direct3D

Windows GDI

GDI+
Graphics

Mutimedia
Graphics and drawing

SoundPlayer class

Data access and app resources

UWP Win32 (Windows API) WPF Windows Forms
Data access

Data binding

Files, folders, and libraries

App resources
Data access and storage

Local file systems

Resource overviews
Data and modeling

Data binding

Resources in .NET apps

Application resource, content, and data files
Data and modeling

Data binding

Resources in .NET apps

Application settings

Devices, documents, and printing

UWP Win32 (Windows API) WPF Windows Forms
Enable device capabilities

Enumerate devices

Sensors

Bluetooth

Printing and scanning

NFC
Sensor API

Printing

UPnP APIs
Printing and print system management Print support

System, network, and power

UWP Win32 (Windows API) WPF Windows Forms
Enumerate devices

Get battery information

Threading and async programming

Networking and web services
System services

Memory management

Power management

Processes and threads

Networking and Internet

Windows system information
Threading model

Network programming in the .NET Framework
System Information

Power management

Network programming in the .NET Framework

Networking in Windows Forms

Packaging and deployment

UWP Win32 (Windows API) WPF Windows Forms
Packaging apps

MSIX

App package manifest schema
Package Windows desktop apps (MSIX)

Application installation and servicing

Windows Installer
Package Windows desktop apps (MSIX)

Deploying the .NET Framework and applications

Deploying a WPF application
Package Windows desktop apps (MSIX)

Deploying the .NET Framework and applications

ClickOnce Deployment for Windows Forms