Mono ist ansich eine tolle Sache. Aber du vergisst zu sagen, dass man die nativen Kompilate nur mit den kommerziellen Versionen von Xamarin erstellen kann.
Öh, nein?
http://www.mono-project.com/AOT
Da bist du schnell 1000 € los, bevor du überhaupt angefangen hast. Außerdem kann man mit der "Starter Version" unter Mac
OS X wirkich nicht viel machen.
Grundsätzlich geht das auch ohne die kommerziellen Xamarin-Tools:
http://www.mono-project.com/MonoMac
Wenn man kein Geld ausgeben will, sieht Mono schon bei weitem nicht mehr so toll aus. Wenn man für ein 5MB Projekt ein 120MB Framework installieren muss, ist das schon ein ganz schöner overkill.
Kann man auch unter Linux das Mono Framework mit linken?
Und durch Full-Ahead of Time Compilation muss das Framework nicht installiert sein, und ja, das funktioniert auch unter Linux.
Das ganze ist wie gesagt Teil von Mono und entsprechend auch ohne das kostenpflichtige Xamarin-Toolset verfügbar.
Mit ist es vielleicht ein klein wenig bequemer, aber das ist eben der entsprechende Mehrwert einer kommerziellen Lösung. Ein gewisses maß an Vorteilen kann man sich erkaufen, man kann aber auch drauf verzichten.
Mit Lazarus + FPC hingegen kannst du für alle großen Platformen native Executables erstellen. Das ganze kostet dich keinen Cent und Lazarus hat in den letzten zwei Jahren wirklich massiv aufgeholt. Man kann damit tatsächlich mittlerweile produktiv arbeiten.
MonoDevelop ist auch eine sehr fähige
IDE und kostet auch keinen Cent.
Mono ist nicht so schlecht, wie man es immer hinstellen mag. Es skaliert hervorragend, das Tooling ist auch durchaus vergleichbar mit anderen kommerziellen Lösungen und man hat halt zusätzlich die Vorteile einer Managed Platform zur Verfügung.
Ich würde mal aus dem Stegreif behaupten, das sich die beiden Lösungen vermutlich nicht viel schenken werden. Mit beiden kann man vermutlich alles machen. Das eine wird vielleicht hier, das andere dort etwas geschickter sein. Es ist eben eine reine Frage der Präferenz. Aber es gibt grundsätzlich keine Einschränkung, das sich etwas bestimmtes nur mit Lazarus/FPC umsetzen liesse, was mit Mono nicht auch ginge.