Windows Portable Devices (skrót: WPD) – technologia umożliwiająca komunikację komputerów z podłączonymi urządzeniami multimedialnymi oraz magazynującymi. Technologia ta zapewnia elastyczny i wydajny sposób interakcji z odtwarzaczami muzycznymi, pamięciami przenośnymi, telefonami komórkowymi, aparatami fotograficznymi oraz wieloma innymi typami urządzeń. System ten zastąpił starsze rozwiązania, takie jak Windows Media Device Manager (WMDM) oraz Windows Image Acquisition (WIA).

Aplikacje oparte na architekturze WPD mogą eksplorować zasoby urządzenia, przesyłać dane w obie strony, a także sprawować kontrolę nad sprzętem – na przykład wyzwolić migawkę aparatu lub wysłać wiadomość tekstową. Projekt systemu kładzie nacisk na:

elastyczność – umożliwiającą obsługę wielu różnorodnych typów urządzeń, rozszerzalność – pozwalającą programistom sterowników na definiowanie własnych właściwości i poleceń dla specyficznego sprzętu.

W ramach WPD możliwe jest tworzenie zarówno aplikacji systemowych (Windows), jak i aplikacji webowych. Do tworzenia aplikacji natywnych wykorzystywany jest interfejs API WPD, obsługujący języki C++, C# .NET oraz Visual Basic .NET.