Właśnie flutter był od początku projektowany pod wieloplatformowość i wydajność i całkiem nieźle im się to udało dodatkowo bardzo dobrze ogarnęli hot reload który rzeczywiście działa.
Multiplatformowość - Taka multiplatformowość jest możliwa bo flutter sam w sobie jest tylko od UI, renderer jest tak jakby interfacem a zaimplementować go można pod każdą platformę, więc żeby umożliwić działanie na nowej platformie wystarczy zrobić renderer pod nią - oczywiście jest to uproszczenie, ale mniej więcej tak to wygląda.
Wydajność - Flutter jest wydajny bo jest kompilowany do kodu natywnego, tylko w wersji debugowej dla umożliwienia hot reloadów i przyspieszenia kompilacji aplikacje działają na dartowej VM (tak jak javowe programy działają na JVM)
Framework UI? Co z Rest API, Bluetooth itp?? - Flutter sam w sobie umożliwia tworzenie interfejsów, reszta to albo standardowe biblioteki Darta (o tym później), biblioteki społeczności oraz własny kod natywny i method/event channel'e. Więc można w tym zrobić pełnoprawną aplikację, jeśli się nie mylę to jaką tylko byśmy chcieli ale nie zawsze będzie to najlepszym rozwiązaniem. Biblioteki społeczności zwykle są we wczesnych wersjach więc mogą działać kiepsko. Własny kod natywny robimy w osobnych folderach dla ios i androida a potem z poziomu fluttera wywołujemy kod natywny bridgem w postaci MethodChannel'a lub nasłuchujemy wydarzeń EventChannelem.
Rozmiar aplikacji - aplikacje flutterowe są nieco większe bo minimalnie zajmować będzie około 4.5MB - jest tak ze względu na brak VM - nasza aplikacja musi posiadać biblioteki standardowe w sobie.
Architektura - Flutter jako że jest jeszcze młodym frameworkiem raczej nie ma jeszcze dojrzałej architektury, jednak dosyć dużym powodzeniem cieszy się BLoC, jednak jak mówiłem nie jest jeszcze dojrzały albo przynajmniej wspomniana implementacja nie jest w pełni przemyślana i ma parę niedopatrzeń.
Mimo tych wszystkich udogodnień uważam że ciężko by było zrobić aplikację na wszystkie wymienione powyżej platformy, a przynajmniej nie z totalnie jednym code base, ale na pewno wiele można by było uwspólnić. Jednak tworzenie aplikacji multiplatformowych ios+android da się bardzo dobrze zorganizować i to ma jak najbardziej sens ponieważ większość bibliotek wspiera właśnie te dwie platformy.