StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Frameworks
  4. Cross Platform Mobile Development
  5. Apache Cordova vs Xamarin

Apache Cordova vs Xamarin

OverviewDecisionsComparisonAlternatives

Overview

Xamarin
Xamarin
Stacks1.3K
Followers1.5K
Votes785
Apache Cordova
Apache Cordova
Stacks686
Followers892
Votes218
GitHub Stars955
Forks345

Apache Cordova vs Xamarin: What are the differences?

## Introduction
Apache Cordova and Xamarin are both popular tools used for mobile app development. While they both serve the same purpose, there are key differences between the two that developers should consider before choosing one for their project.

1. **Language Compatibility**: Apache Cordova primarily uses HTML, CSS, and JavaScript for app development, making it ideal for web developers looking to create mobile apps with their existing skill set. On the other hand, Xamarin allows developers to write apps in C# and .NET languages, providing a more native feel to the apps.

2. **Performance**: Xamarin apps are known for their high performance, as they compile down to native code. This results in faster execution and better overall user experience compared to Apache Cordova apps, which run inside a web view.

3. **Native API Access**: Xamarin provides direct access to native APIs of each platform, allowing developers to leverage platform-specific features more easily. Apache Cordova, on the other hand, relies on plugins to access native features, which can sometimes lead to compatibility issues or limited functionality.

4. **Community and Support**: Xamarin has a large and active community, along with extensive documentation and support from Microsoft. This can be beneficial for developers facing challenges or looking for resources. Apache Cordova also has a strong community, but the level of support may vary depending on the plugins being used.

5. **Platform Support**: Xamarin supports a wide range of platforms, including iOS, Android, and Windows, providing developers with a comprehensive solution for cross-platform development. Apache Cordova, while also offering cross-platform support, may have limitations in terms of accessing platform-specific APIs or optimizing performance for each platform.

6. **Cost**: Xamarin comes with a cost, especially for enterprises or larger teams, due to licensing fees. Apache Cordova, being an open-source framework, is more cost-effective for smaller teams or individual developers looking to create mobile apps without additional expenses.

In Summary, Apache Cordova and Xamarin differ in language compatibility, performance, native API access, community support, platform coverage, and cost, offering developers various considerations when choosing a tool for mobile app development.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Xamarin, Apache Cordova

Gabor
Gabor

CTO at momento.

Aug 23, 2021

Decided

As a startup, we need the maximum flexibility and the ability to reach our customers in a more suitable way. So a hybrid application approach is the best because it allows you to develop a cross-platform application in a unique codebase. The choice behind Ionic is Angular, I think that angular is the best framework to develop a complex application that needs a lot of service interaction, its modularity forces you (the developer) to write the code in the correct way, so it can be maintainable and reusable.

209k views209k
Comments
Jan
Jan

Jan 24, 2022

Decided

I wanted to develop a student app that possibly could be used by many teams (students from other schools)

I chose Ionic, because:

  • single codebase: previously, we used React Native for Android and Angular for web/PWA, which was troublesome

  • portability: runs on PWA (which is important, because iOS license is too expensive for school app), web, Android iOS (+ others, if needed)

  • full use of web technologies: Next.js, Tailwind, React in this example (in oppose to Flutter/Java/Kotlin)

  • stability and maintainability: low-entry level due to basic web technologies without new syntax (in oppose to React Native and Flutter), web is really stable and won't lose support (which doesn't have to be true with Flutter/Dart)

106k views106k
Comments
Bhupendra
Bhupendra

Web Developer at Ecombooks

Oct 13, 2022

Needs adviceonReact NativeReact NativeFlutterFlutterXamarinXamarin

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.

727k views727k
Comments

Detailed Comparison

Xamarin
Xamarin
Apache Cordova
Apache Cordova

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.

Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.

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.
Cross-platform (CLI) workflow;Platform-centered workflow;Hundreds of plugins
Statistics
GitHub Stars
-
GitHub Stars
955
GitHub Forks
-
GitHub Forks
345
Stacks
1.3K
Stacks
686
Followers
1.5K
Followers
892
Votes
785
Votes
218
Pros & Cons
Pros
  • 121
    Power of c# on mobile devices
  • 81
    Native performance
  • 79
    Native apps with native ui controls
  • 73
    No javascript - truely compiled code
  • 67
    Sharing more than 90% of code over all platforms
Cons
  • 9
    Build times
  • 5
    Visual Studio
  • 4
    Price
  • 3
    Complexity
  • 3
    Scalability
Pros
  • 48
    Lots of plugins
  • 35
    JavaScript
  • 26
    Great community
  • 25
    Easy Development
  • 18
    Easy to learn
Cons
  • 2
    No native performance
  • 1
    Hard to install
  • 0
    Hard to install

What are some alternatives to Xamarin, Apache Cordova?

Ionic

Ionic

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

Flutter

Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.

React Native

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.

NativeScript

NativeScript

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.

Framework7

Framework7

It is a free and open source mobile HTML framework to develop hybrid mobile apps or web apps with iOS native look and feel. All you need to make it work is a simple HTML layout and attached framework's CSS and JS files.

Qt

Qt

Qt, a leading cross-platform application and UI framework. With Qt, you can develop applications once and deploy to leading desktop, embedded & mobile targets.

PhoneGap

PhoneGap

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.

Expo

Expo

It is a framework and a platform for universal React applications. It is a set of tools and services built around React Native and native platforms that help you develop, build, deploy, and quickly iterate on iOS, Android, and web apps.

Vue Native

Vue Native

Vue Native is a mobile framework to build truly native mobile app using Vue.js. Its is designed to connect React Native and Vue.js. Vue Native is a wrapper around React Native APIs, which allows you to use Vue.js and compose rich mobile User Interface.

Shoutem UI

Shoutem UI

Shoutem UI is a set of styleable components that enables you to build beautiful React Native applications for iOS and Android. All of our components are built to be both composable and customizable.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase