Výhoda je to že můžete optimalizovat cenu, pokud paměti nepotřebujete moc. Krom fundamentálních nevýhod jako je nutnost kupovat druhý čip (a další sadu pasivních součástek jako jsou decoupling kontdenzátory), které zabírají další místo na PCB vedle už tak dost velkého čipu, to má i další nevýhody. Velkou nevýhodou je výkon, protože externí flash je sériová (interní je paralelní) a samozřejmě používá jiný interface než vyžaduje systémová sběrnice ARMového jádra (interní je samozřejmě navržena s mnohem vhodnějším rozhraním), takže to není moc efektivní, musí se dělat převod transakcí, atd. Každý přístup do extenrí flash hrozně dlouho blokuje jádro v jakékoliv činnosti (krom nezávsilých jednotek jako je DMA, atd.). Řeší to cache, takže to není moc velký problém, ale může to přinést různá překvapení v determinističnosti aplikace. Pokud je požadavek na determinističnost, tak se to většinou řeší kopírováním kódu do RAM. Tím se všechny problémy vyřeší, ale zase potřebuješ více RAM.
Výkon je dobrý, navíc jádra jsou taktované na vysoké frekvence. Rozdíl mezi jádry je zejména ve funkcionalitách. Nemá to floating point instrukce, DSP instrukce, bezpečnostní instrukce (spojené s TrustZone), atd. Takže jestli něco takového používáš (např. floaty můžou být problém), tak to potenciálně bude pomalejší, ale jinak to zásadní omezení nemá a lze očekávat výkon dostatečný na všechny běžné úlohy. Rozhodně to bude mnohem rychlejší než jakékoliv 8b MCU.
Nějaké detailnější porovnání je na: https://en.wikipedia.org/wiki/ARM_Cortex-M