Windows'un küçültülmüş bir sürümü olmadığı için "normal" Windows programları Windows CE altında kullanılamazlar. Bunun diğer bir sebebi de, Windows CE işletim sisteminin çok farklı işlemci mimarilerinde çalışabilir olmasıdır. Öte yandan, daha sonra da açıklanacağı üzere Windows CE için program yazması Windows için program yazmaya fazlasıyla benzediğinden, bazı yazılımların Windows CE sürümü de vardır.
Windows CE, birçok alanda kullanılabilir:
- Ucuz taşınabilir PC'ler
- Çok küçük PC'ler
- Pocket PC'ler
- Cep telefonları
- TV setleri
- Benzer elektronik araçlar
Bir programcı için Windows CE'nin en büyük avantajı, önceden tanıdığı Win32 arayüzüne çok benzer bir arayüz sunmasıdır: diyalog pencereleri, registry ve DirectX Windows CE'de aynı ya da oldukça ufak değişikliklerle kullanılabilir. Windows CE'de asenkron işlemler bulunmamaktadır (ör. WSAAsyncSelect, asenkron dosya erişimi). Ayrıca bazı Win32 API fonksiyonlarına ait parametreler, Windows CE yazılım geliştirme kitinde tanımlandığı halde kullanılmamalıdır. Windows CE üzerinde .NET Compact Framework ile de uygulama geliştirilebilir. "Normal" Windows altında program yazmak için sıkça kullanılan Visual Studio aracı, ya da eMbedded Visual C++, Windows CE'ye de uygun kod üretebilir ve derleyebilir. Bunun için Microsoft'tan gerekli yazılım geliştirme kiti indirilebilir. eMbedded Visual C++ ve yazılım geliştirme kitleri (SDK) ücretsizdir. Windows CE Emulator'ü ile, geliştirilen yazılım alete aktarılmadan önce test edilebilir.
Windows CE, aşağıdaki yazılım ve donanımları desteklemektedir:
- Word, Excel, Outlook ve son olarak PowerPoint'in Windows CE sürümleri vardır
- Internet Explorer Mobile başta olmak üzere bazı web tarayıcılarını kullanılabilir, MSN Messenger'ın Windows CE sürümü vardır
- Opera Web Browser, 2006 yılında 4 farklı işlemci mimarisinde çalışmak üzere (X86, ARM, SH4 ve MIPS) Windows CE için yeni browser çekirdeğini kullanan iki ayrı web browser ve web browser yazılım geliştirme kiti hazırlamıştır
- Windows Media Player'a ek olarak birçok alternatif yazılım sayesinde (The Core Pocket Media Player gibi) birçok çoklu ortam dosyası açılabilir
- Windows CE, aygıt sürücüsü bulunduğu takdirde Wi-fi, Bluetooth, GSM, GPRS, EDGE, 3G veya VPN gibi sayısız bağlantı desteğine sahiptir
- Bir çok çevre birim (USB diskler gibi) desteklenir
Windows CE, gerçek zamanlı işletim sistemidir. Pocket PC 2002, Pocket PC 2003 ve Windows Mobile 5.0 işletim sistemlerinin temeli Windows CE'ye dayanır. Windows CE, Intel x86, ARM, MIPS ve SH4 gibi farklı işlemci mimarileri üzerinde, 1MB gibi oldukça küçük hafızayla çalışabilir.
Windows CE 120 günlük deneme kiti ya da tam sürümüyle beraber, geliştirmenin yapılacağı PC'ye kurulmak üzere Platform Builder isimli bir uygulama gelir. Bu uygulamada işlemci mimarisi, işletim sistemiyle beraber alete yüklenecek uygulamalar, aygıt sürücüleri ve platforma özel diğer bileşenler seçilir ve bir Windows CE imajı oluşturulur. Platform Builder, aynı zamanda seçilen imaja ait bir yazılım geliştirme kiti de üretir. Bu kitin Visual Studio 2005'e ya da eMbedded Visual C++'a eklenmesiyle, oluşturulan imajda çalışacak uygulamalar geliştirebilir. İmaj daha sonra yine Platform Builder vasıtasıyla alete aktarılır. Platform Builder ile beraber kernel debugger, profiler gibi birçok yardımcı uygulama da gelir. Bu uygulamalar sayesinde oluşturulan imajdaki sorunların tespiti kolaylaşır.
Windows CE'de, diğer rakiplerinin bazılarından farklı olarak, fakat tıpkı Windows NT'de olduğu gibi, zamanlayıcı (scheduler) için en küçük görev (task), ipliktir (thread). Windows CE, öncelik zamanlaması (priority scheduling) ile çalışır. Windows CE'de oldukça önemli bir başka yöntem daha kullanılır, bu da öncelik değişimidirdir (priority inversion).
Microsoft, Windows CE ile beraber Internet Explorer'da çalışmak üzere bir adet Macromedia Flash ActiveX'i de sunmaktadır.
Windows CE ve türevlerinin standart implementasyonlarında DCOM desteği sınırlıdır. COM ve OLE otomasyonu (automation) sınırlıdır. Bu işlemler 70-800KB hafıza gerektirebilir. Zayıf COM desteği ve performans kaygısı sebebiyle, Windows CE işletim sistemleri üzerinde COM bileşenleri kullanımından kaçınılır.
Windows CE işletim sistemi, özel durumları (exception) desteklemektedir. Ancak Win32 debugging API (dbghelp) Windows CE'de bulunmamaktadır (ticari bir implementasyonu bulunmaktadır). Bundan dolayı özel durumların çözümlenmesi (stack trace) ya da çalışma zamanında kullanılan bazı teknikler Windows CE üzerinde kullanılamamaktadır.