Gömülü cihazlarda programlama için C, C++ ve assembly dilleri kullanılıyor. Uygulama geliştiriciler kodlarını direk donanımların kendi ara yüzlerine yazmaktalar. Bir cihaz için yazdığınız çalışan kodunuz  diger sistemde çalışmıyor. İşlemciler aynı bile olsa, veri yolları, interruptlar, hafıza ve I/O arabirimleri farklılık gösteriyor.

Her işlemci üreticisi kendi devkiti, simülatörini ve debug aracını kendi geliştirmekte. Uygulama geliştiriciler için zor bir durum.

İşte .Net MF deki farklılık burada başlıyor, .NET Micro Framework yüklü boardlar, kullanıma hazır single-board-computer lar. Tabi hepsi kendi hafıza, ekran, GPIO ve seri portlarını barındırmakta. Framework deki class ve nesneler, cihaz ile yazacağınız kod arasında bir ara katman oluyor.
Böyle olunca, donanımın özellikli kodlarına değil siz yapmak istediğiniz .Net koduna odaklanıyorsunuz.

.Net Micro framework içerisinde mevcut donanıma erişmek için temek sınıf kütüphanelerini sanki bir nesne gibi kullanıyorsunuz. Yazılımınızdan donanımlara nesne yönelimi kodları yazarak erişiyorsunuz.

Bu şekilde donanımdan bağımsız managed kod yazabiliyorsunuz. Ve yazmış olduğunuz kodun standart kütüphanedekilerini farklı cihazlarda çalıştırabiliyorsunuz.
Ve bu kodu yazarken Visual Studio gibi gelmiş geçmiş en iyi IDE yi ve popüler C# dilini kullanıyorsunuz. İşlemciden hatta single-board-computer dan bagımsız kod yazabiliyorunuz.

.Net MF sayesinde bütün cihazlar aynı dili konuşmuş oluyor, yani C#...
 
Managed Kod ile yazmanın diger ajantajları 
- Otomatik hafıza yönetimi (Garbage Collection sayesinde
- Thread yönetimi ve senkronizasyonu
- Exception handling (istisnai durum yakalayıcısı)
- Veri tipi güvenligi
- Debug hizmeti