Last Updated: February 10th, 2013

The majority of Android developers use Java to create their apps. While Java isn't the hardest programming language to learn, it's always best to get as many people developing as possible.... not that Android is hurting in that respect. Even so, a new way to create apps using Microsoft's familiar C# language is now available, by way of TallApplications BV's Dot42 - a tool that aims to accomplish this task without requiring something like mono.


The gist is simple: it's a compiler that will allow you to code apps in Visual Studio. You can use existing Android API libraries. There's even limited support for editing String and Menu resources in WYSIWIG. Unfortunately, due to technical restrictions, Visual Studio Basic is not supported.

The community license will allow you to use Dot42 in your own projects for free, but creating commercial apps or publishing to the Play Store (even for a free app) is prohibited. The professional license is a pricey $649/€ 499.00 per developer, with a 25% discount for packs of four. Each license comes with a year of priority support, with subsequent years costing 30% of a license, with free major version upgrades as long as you're subscribed.

So, any developers interested in giving it a go?

Update: The Dot42 licensing policy described above has undergone a significant change. As noted on Dot42's website, free apps can now be published to the Google Play Store and other marketplaces without violating the community license. In addition, the price for the professional license has been lowered to $399.

Dot42 - C# for Android via Twitter

Jeremiah Rice
Jeremiah is a US-based blogger who bought a Nexus One the day it came out and never looked back. In his spare time he watches Star Trek, cooks eggs, and completely fails to write novels.
  • http://blog.ravrahn.net/ Owen Cassidy

    Java and C# are very, very similar, syntactically speaking. The method in the screenshot only has about two characters different to how it would be in Java.

    It'd be much better to learn Java coming from C# than to buy a 500 euro license to keep using C# in a more limited environment with less support.

    • LiamBryant

      Especially since learning Java has much more benefits in and of itself; portability over C# is a big aspect, and Java is almost ubiquitous in the developer market.

    • V-2

      @Override annotation (instead of override modifier) and super instead of base. Camel casing is just a convention. More than 2 characters I think, but yes they are similar. I'm a C# developer who went on to Java / Android. The hard part is not learning Java itself, but accepting that LINQ is gone, events - gone, lambdas - gone (okay, supported in Java 8, but it's not available for Android development yet), reified generics - gone, collections - way less pleasant to work with... etc. :) But Android Studio is great and it seems to be under very rapid development. Community support is invaluable as well, which means that I'd be reluctant to use a tool like Xamarin or dot42, both with a much smaller user base. I'm very interested in using Scala for Android though, it addresses many shortcomings of Java

  • Alexander Biemann

    C# is really similar to Java - that's not much of a hurdle. However, using Visual Studio for the UI would be awesome!

  • Benjamin LE CUN

    Almost puked on my keyboard

  • http://twitter.com/Larsened David

    What would the difference be between an app written in Java and one written in C#? Is there a benefit to using one over the other?

    • http://twitter.com/nagi603 Nagy Balázs András

      If you know c# and are new to (or prefer not to learn) Java, that in itself is quite a benefit.

      • VoiceofSky

        but besides that which you mentioned ..any other advantages or just another route to go?

        • Peter Feichtinger

          Visual Studio is pretty awesome, that would be the advantage for me.

      • marcusmaximus04

        If you know C#, you pretty much know java.

  • Pancake345

    Xamarin has been doing this for a while now.

    • http://www.facebook.com/profile.php?id=674791489 Loic Lacomme

      we use Xamarin here. Xamarin allows you to use mono dll (any c# algorithm data structure etc you were using the past)

  • http://twitter.com/nagi603 Nagy Balázs András

    I'd be inteersted, but that licence cost... ouch.

  • RenatoFontesTapia

    What advantages does this has over mono?

  • http://twitter.com/NothAU Tony

    Are there any free options out there that aren't non-commercial restricted?

    • Roger Heim

      IntelliJ Community Edition. Has pretty much everything needed for Android dev plus a very VS-like layout designer. The Ultimate Edition has more capabilities for non-Android dev and is much more reasonably priced.

  • Kenny Chung

    Hmm... Write it in VS then copy and paste it directly into eclipse... Sounds like a plan to me

  • http://www.androidmarket.cz/ Petr Houška

    As far as I'm concerned you are allowed to use free licence for commercial apps even if you want publish them on Google Play...
    "as (but not limited to) Google Play or SlideME unless it is free. The "

  • http://twitter.com/havens1515 Randroid

    Since I have a program that's already written in C# that I want to convert to Android, I'd love to try it... but not for that price!

    • Frank Rem

      The community license is free and allows you to use it for non-commercial purposes. It also allows you to publish free apps on Google Play. Also today, we announced that we decreased the price of the professional edition from 649 to 399 USD. Disclosure: I work for dot42.

      • CSharpGuy

        Amazing, you guys rock. I'm a .Net developer and I've got a few ideas for apps that I'd love to put on the Android market (and my resumé!), not looking to make any money so a free non-commercial version is perfect for me.

      • didibus

        If free apps are a go, I might give it a try!

      • http://twitter.com/havens1515 Randroid

        Awesome! If I can make it into a free app, then I'll definitely check it out!

        I'm sure I'll still have to make some changes to code, to get the Windows GUI to look right on Android, but it should save me a lot of work!

        EDIT: One question: I use 2 different computers to do my developing. Can I use the same serial key on both computers?

        • Frank Rem

          Sorry I missed your question. It may not work because it is bound to your Windows user name. In that case we simply issue an extra serial.

  • iqrar

    how to open design view in free eeriosn plz tell me asap

  • V-2

    It's not a very well known fact that Google actually considered C# instead of Java (as the development language for Android) at some point. "If Sun doesn't want to work with us, we have two options: 1) Abandon our work and adopt MSFT CLR VM and C# language - or - 2) Do Java anyway and defend our decision, perhaps making enemies along the way" (Andy Rubin)