Wenn du nur eine iOS App brauchst, dann empfehle ich sie native mit Swift/Objective-C zu machen, um das Risiko für Probleme zu reduzieren.
Wenn du C# Libraries hast, die du gern weiter verwenden willst, kann es sinnvoll sein die App mit Xamarin zu machen, um sich Arbeit beim Neuschreiben der Libs zu sparen.
Es sollte einem bewusst sein, dass man sich mit Xamarin auch viele Probleme einfangen kann, wenn die App komplex ist. Bei einer App die bissl GUI zeigt und ein paar HTTP-Requests macht, kann eigentlich nicht so viel schief gehen, wie bei einer App, die auf geräte- und betriebssystemspezifische Funktionen zugreift.
Weiters sollte man bedenken, dass man die GUI möglicherweise sowieso mehrmals machen muss, denn iOS und Android unterscheiden sich vom Look & Feel sehr, und idealerweise macht man die App so, wie es für das entsprechende OS üblich ist, damit die Benutzer sofort gut klar kommen.
Und dort wo sich die Betriebssysteme stark unterscheiden, wird man auch nicht drum herum kommen Code "doppelt" zu schreiben.
Am besten einfach mal ausprobieren und dann entscheiden.
Ich habe vor 1,5 Jahren mit Xamarin einen einfachen Protoyp für eine VoIP App meines Arbeitgebers gemacht. Das war soweit kein Problem, aber dennoch haben wir uns nicht getraut sie dann schlussendlich mit Xamarin umzusetzen, da die Unsicherheit zu groß war (z.B. Angst vor möglicher Sackgasse).