You should spend some time deciding on the mobile app strategy. and will you support both iPhone and android? will you have an android and an iPhone team? do you need native look, or will you have a common custom look?
these decisions can help. if you are decided on Xamarin you three choices
1) Xamarin calling the native UI. For IOS you use Storyboard to design the UI and call Cocoa UI (SwiftUI is not supported at this time). For android you use the Android Designer.
2) Xamarin using MAUI UI (or the old Xamarin forms, but I'd use MAUI at this point) . The UI is design using the xml Xaml files. While a common component library, the MAUI components use native UI, so you get a native look.
3) Xamarin use Blazor (hosted by MAUI). You write the UI in html/css using Blazor components.
Mobile app development is its own world. Testing is very difficult (lots of devices and OS versions), and at least 2 app stores. You will find you need a dedicated team.
my team (very small) has tries several approaches:
1) Hybrid app - native mobile app hosting webview and javascript.(similar to the blazor approach, only writing in.javascript(
2) Native React - Common code base written javascript. Under the covers same as Blazor, a native app hosting a web view and javascript
3) Native app - Swift for IOS and Kotlin for Android. Though even our native apps use webview javascript for common code.
As our mobile apps tend to be just UI's to the server, we have found the native app the simplest. There is just not that much common code at the UI layer. Swift or Kotlin is not different from C#. And you can use the native designers.
if we get a new mobile app, we will look at Xamarin. But the shared code benefit would need to out weigh the learning curve of MAUI Xmal. Blazor is the same as the Hybrid, and we already know javascript.
Also we use Mac's for mobile development because the mobile toolchains work best there, and Mac is required for any real IOS development.