Be' insomma, un po' di differenze ci sono... lavorare con un AVR che ha 2 KB di memoria flash in tutto e 16 MHz di clock è tutto un altro discorso che scrivere applicazioni GUI Qt, per quanto tu possa lavorare in C++ in entrambi i casi... Oltre al fatto che spesso lavorando embedded non hai pezzi considerati fondamentali (ad esempio, potresti non un sistema operativo sotto, o l'allocazione dinamica, il grosso della libreria standard, le eccezioni, le vtable potrebbero portare via troppo spazio, ...), dover lavorare con concetti di basso livello (impostare l'hardware modificando bitmask in registri, gestire gli interrupt, lavorare direttamente con le porte hardware), dover gestire hardware "strano" (senza le astrazioni del sistema operativo) e protocolli tipicamente hardware (I2C, SPI, ...), ... insomma, è un mondo abbastanza diverso.