• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
Digital Caesar LLC Logo

Digital Caesar LLC

Bringing the digital world to life

  • Home
  • Blog
  • Resources
  • Products
    • Anticipation
    • Digital Results
    • Easy Grader
    • Being Catholic
  • Contact Us
  • About

The origins of C#

You are here: Home / Xamarin Forms / The origins of C#

March 2, 2018 by Tony D Caesar Leave a Comment

Why did Microsoft Create C#?

Coffee Beans
Alex

I read great posts recently from Rafael Teixeira and Dan Shappir related to a question on Quora, “Why did Microsoft create C#.”  This dovetails nicely with my prior post, Top 5 Reasons to Program using Xamarin.  Dan taps into the business motivations behind Microsoft’s decision to create C# and .Net.  Rafael touched on more of the promise that developed through Mono.  I recalled more of the emotional response at the time.

What is the difference?

Microsoft .NET logoC# is one language build on top of the Microsoft .Net Framework.  The .Net Framework was something of a joke in its first release.  It was clearly inspired by and meant to compete with Java.  Java was a popular language and Microsoft was losing developers to other platforms.  As Dan points out, Microsoft tried to make Java their own.  When that failed, they resorted to developing a replacement language, C#.

C# was inspired by Java.  But the underlying framework was very different in approach.  Java is one language where apps are written once to run anywhere provided the right runtime environment is installed on the client machine.  The Microsoft’s .Net Framework can interpret many (Microsoft) languages into one Windows app.  Microsoft’s .Net was like Java reversed.

Hope versus reality

Java Logo Java brought the hope of writing an app once and running it on any platform.  In practice, the experience has left something to be desired.  First, you have the challenge of making sure the client has a copy of the right Java Runtime Environment.  Too recent, and some of your code dependencies may have been deprecated.  Too old, and some of your code dependencies may not be present.  Not to mention, Java was naturally slow.  Today’s Java apps written for Android can only run on an Android device.

Xamarin Logo Ironically, Microsoft .Net turned out to be better suited to cross-platform development in the long run.  Thanks to Miguel de Icaza, we have Mono which eventually enabled Xamarin.  With Xamarin, you can write one app in C# and compile to run natively on any Windows, Android, or iOS device.  The customer experience is maintained and performance is consistent. C# has become what Java hoped to be.

For More Information

If you would like to learn more about programming in C# and Xamarin, then you can find a wealth of information at https://www.xamarin.com.  Do you like what you read?  If so, subscribe below to receive more great content.  Share with your friends and leave feedback below.

Xamarin Forms C#,  Java,  Microsoft.Net,  Xamarin

About Tony D Caesar

I’ve been a hobbyist developer all my life. In school, I was the guy reprogramming the computer while the rest of the class was struggling to find the letter ‘a’ on the keyboard. In my professional life, I’ve used programming to simplify menial tasks in my day job. I realized that I’ve built experience and a skill that was largely hidden from the world. Why not share that knowledge and put my skills to work in the world?

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Subscribe to Blog via Email

Donate

Footer

Follow along on Social Media

  • Email
  • Facebook
  • LinkedIn
  • Pinterest
  • RSS
  • Tumblr
  • Twitter
Copyright ©2025 · Digital Caesar LLC · All Rights Are Reserved
Powered by Business Pro Theme On Genesis Framework a WordPress Site · Log out
Privacy· Terms of Use

Copyright © 2025 · Business Pro Theme on Genesis Framework · WordPress · Log in

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Accept Reject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT