+ 1

What is Xamarin?

Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
Xamarin is a tool in the Cross-Platform Mobile Development category of a tech stack.
Xamarin is an open source tool with GitHub stars and GitHub forks. Here’s a link to Xamarin's open source repository on GitHub

Who uses Xamarin?

144 companies reportedly use Xamarin in their tech stacks, including doubleSlash, Olo, and Scopeland Technology GmbH.

1058 developers on StackShare have stated that they use Xamarin.

Xamarin Integrations

.NET, OneSignal, Bitrise, bitwarden, and Raygun are some of the popular tools that integrate with Xamarin. Here's a list of all 21 tools that integrate with Xamarin.
Pros of Xamarin
Power of c# on mobile devices
Native performance
Native apps with native ui controls
No javascript - truely compiled code
Sharing more than 90% of code over all platforms
Ability to leverage visual studio
Mvvm pattern
Many great c# libraries
Amazing support
Powerful platform for .net developers
GUI Native look and Feel
Nuget package manager
Backed by Microsoft
Enables code reuse on server
Faster Development
Use of third-party .NET libraries
It's free since Apr 2016
Best performance than other cross-platform
Easy Debug and Trace
Open Source
Mac IDE (Xamarin Studio)
Xamarin.forms is the best, it's amazing
That just work for every scenario
C# mult paradigm language
Power of C#, no javascript, visual studio
Great docs
Compatible to develop Hybrid apps
Microsoft stack
Microsoft backed
Well Designed
Small learning curve for Mobile developers
Ability to leverage legacy C and C++
Decisions about Xamarin

Here are some stack decisions, common use cases and reviews by companies and developers who chose Xamarin in their tech stack.

Bhupendra Madhu
Web Developer at Ecombooks · | 8 upvotes · 63.6K views

I want to learn cross-platform application frameworks like React Native, Flutter, Xamarin, or Ionic, and I'm a web developer. I can learn other programming languages as well. But I'm confused about what to learn, which framework is best, and which framework will last long as the application grows further into complexity.

See more
Shared insights
XamarinXamarinReact NativeReact NativeIonicIonic

I have an app developed in Ionic 1, i have to migrate ¿Wich Plataform do you recommendate to use Ionic, React Native or Xamarin?

See more
Shared insights

Just starting with app programming. Between Xamarin & Xcode, which would you recommend for ease of learning and use?

See more
William Miller
CEO at Stealth Startup · | 7 upvotes · 325K views

We are developing an AWS IoT app for large boats. The IoT devices have sensors all over the boat for engine oil pressure, position, water depth, fuel level, crew location, etc. When the boat has internet, we interact with AWS cloud using lambda and Amazon DynamoDB. When the boat is offshore, the captain and crew still need normal and emergency alerts and real-time sensor information. The crew might have an Android or IoS phone or a Windows or macOS PC to receive alerts and interact with sensors. We may use the AWS GreenGrasss edge computing solution and either MQTT or HTML for that function.

Question: We want to develop a cross-platform client to run on Windows, Mac, Android, IOS, and possibly Linux. We are primarily Python programmers, so PyQt or Kivy are options for us, but we have heard good things about React Native, Flutter, Xamarin, and others. We think an AWS Greengrass core on an RPI4 could communicate to the client with MQTT or a local webserver with a client web interface.

Any thoughts would be much appreciated.

See more
Andre Stemmett
Software Engineer at Microcare · | 4 upvotes · 54K views

Hi there,

I have recently moved from C# and Xamarin to Python and IntelliJ IDEA. I finally have a grasp of python and want to start developing web applications with Django. Which IDE should I use?

Note: I have read that PyCharm is great but the community version only allows for basic web applications. Please help

See more

Xamarin's Features

  • Cross-platform development- Thinking about supporting iOS, Android, Mac and Windows? Xamarin allows you to write it all in C#.
  • Reuse existing code- Use your favorite .NET libraries in Xamarin apps. Easily use third-party native libraries and frameworks.
  • Discover as you type- Explore APIs as you type with code autocompletion.
  • Visual Studio or Xamarin Studio- Create, build, debug, and deploy apps in Visual Studio. Or use Xamarin Studio, a fully-featured IDE that is built for mobile app development.
  • Native UI, Native Performance- Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences.
  • Point and Click UI Design- Xamarin provides a world class Android UI designer. Use Apple Xcode UI designer to create interfaces and Storyboards that automatically sync with your Xamarin.iOS project.

Xamarin Alternatives & Comparisons

What are some alternatives to Xamarin?
React Native
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
NativeScript enables developers to build native apps for iOS, Android and Windows Universal while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms.
PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
See all alternatives

Xamarin's Followers
1490 developers follow Xamarin to keep up with related blogs and decisions.