Understanding Xamarin Forms - Build Native Cross Platform Mobile Apps

26 Aug 2022
3 min read  

Xamarin Forms is a part of Xamarin family to build truly native apps for iOS, Android & Windows from a single and shared code base using C#. Xamarin.Forms offers the UI controls/views which you can use to develop UI. These UI controls/view at run-time are converted to platform-specific UI controls.

For Example

A Xamarin.Forms Button view will map to an Button on Android, a UIButton on iOS and a Button on Windows Phone or Windows UWP.

Xamarin Forms UI Rendering

Xamarin Forms allows developers to declare the UI using XAML (Extensible Application Markup Language) or C# code. Using Xamarin Forms approach you can develop truely native cross platform mobile apps with shared UI and code behind code using c#.

Xamarin Forms UI

Xamarin Forms Architecture

Xamarin.Forms is an abstraction layer on the top of the Xamarin.iOS and Xamarin.Android to build shared UI using XAML or C# code. It also allows to interact with the platform specific APIs to access mobile native features.

Xamarin Forms Architecture

Environment Setup

Xamarin Forms allows you to develop truly cross-platform native apps for Android, iOS, and windows using C#. A Xamarin forms project for Android, iOS, and Windows UWP are based on their platform standard project structure. Xamarin forms development you can do using IDEs - Visual Studio for Windows and Xamarin Studio or Visual Studio for Mac.

Xamarin Development with Windows Machine


Visual Studio for Windows need a connection with Mac machine to develop iOS apps.

Xamarin (Xamarin.iOS, Xamarin.Android & Windows) vs. Xamarin Forms

Xamarin vs. Xamarin Forms
Xamarin.iOS, Xamarin.Android & Windows
Xamarin Forms
Use separate UI per platform
Use one UI for all platforms
Use all platforms specific views for each platform
Use basic views, available on all platforms like Button, Textbox etc.
Need to learn all platform specific native UI views
No need to learn all platform specific native UI views
Takes time to develop cross platform mobile app
Faster cross platform mobile app development approach
Supports up to 60% code reuse
Supports up to 100% code reuse
Recommended where custom UI is more important than code sharing
Recommended where code sharing is more important than custom UI
Best for apps which use many platform-specific APIs
Best for apps which use little platform-specific functionality
What do you think?

Thank you for your time, I hope you enjoyed this article and found it useful. Please add your comments and questions below. I would like to have feedback from my blog readers. Your valuable feedback, question, or comments about this article are always welcome.

Share Article
About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at Scholarhat by DotNetTricks)

Shailendra Chauhan is the Founder and CEO at ScholarHat by DotNetTricks which is a brand when it comes to e-Learning. He provides training and consultation over an array of technologies like Cloud, .NET, Angular, React, Node, Microservices, Containers and Mobile Apps development. He has been awarded Microsoft MVP 8th time in a row (2016-2023). He has changed many lives with his writings and unique training programs. He has a number of most sought-after books to his name which has helped job aspirants in cracking tough interviews with ease.
Learn to Crack Your Technical Interview

Accept cookies & close this