C#
C#

8.7K
6.3K
1.4K
Go
Go

5.4K
3.7K
2.5K
Add tool

C# vs Go: What are the differences?

C#: Simple, general-purpose, object-oriented programming language for the .NET platform. C# (pronounced "See Sharp") is a simple, modern, object-oriented, and type-safe programming language. C# has its roots in the C family of languages and will be immediately familiar to C, C++, Java, and JavaScript programmers; Go: An open source programming language that makes it easy to build simple, reliable, and efficient software. Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

C# and Go can be primarily classified as "Languages" tools.

"Cool syntax", "Great lambda support" and "Great generics support" are the key factors why developers consider C#; whereas "High-performance", "Simple, minimal syntax" and "Fun to write" are the primary reasons why Go is favored.

Go is an open source tool with 60.4K GitHub stars and 8.36K GitHub forks. Here's a link to Go's open source repository on GitHub.

According to the StackShare community, C# has a broader approval, being mentioned in 697 company stacks & 1163 developers stacks; compared to Go, which is listed in 901 company stacks and 606 developer stacks.

- No public GitHub repository available -

What is C#?

C# (pronounced "See Sharp") is a simple, modern, object-oriented, and type-safe programming language. C# has its roots in the C family of languages and will be immediately familiar to C, C++, Java, and JavaScript programmers.

What is Go?

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose C#?
Why do developers choose Go?

Sign up to add, upvote and see more prosMake informed product decisions

What are the cons of using C#?
What are the cons of using Go?

Sign up to add, upvote and see more consMake informed product decisions

What companies use C#?
What companies use Go?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with C#?
What tools integrate with Go?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to C# and Go?
PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
HTML5
HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
See all alternatives
Decisions about C# and Go
Conor Myhrvold
Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 10 upvotes · 341.1K views
atUber TechnologiesUber Technologies
Apache Spark
C#
OpenShift
JavaScript
Kubernetes
C++
Go
Node.js
Java
Python
Jaeger

How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

https://eng.uber.com/distributed-tracing/

(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

See more
Visual Studio
Java
C#

I use C# because it is incredibly clear and easy to use. The documentation is second to none, being a Microsoft product, and if you just want something that works without exploring a million frameworks and libraries you can pretty much start a C# website and have it running in an hour. C# is basically, in my opinion, a cleaner and easier to use Java. My experience is limited to web design, however. It might come down to personal opinion but I wouldn't even know where to start writing a java back end website but visual studio makes it very easy to write it in C#. If you are new to full stack development I can't recommend Visual Studio enough. It does, however, hide away a lot of abstraction that programmers much more clever than me use to make really interesting websites and server setups. C# will do everything you need to create any website you can imagine, though.

Before I end my rant about how much I love this language I'd like to reiterate how easy it is to figure out problems you encounter. I was stuck on how to store a path string in a database and found the solution by browsing the documentation for 2 minutes, which included examples. Every ASP element is clearly and wonderfully documented.

See more
C#
Java
JavaScript
ClojureScript
Clojure

I adopted Clojure and ClojureScript because:

  • it's 1 language, multiple platforms.
  • Simple syntax.
  • Designed to avoid unwanted side effects and bugs.
  • Immutable data-structures.
  • Compact code, very expressive.
  • Source code is data.
  • It has super-flexible macro.
  • Has metadata.
  • Interoperability with JavaScript, Java and C#.
See more
Interest over time
Reviews of C# and Go
Avatar of tschellenbach
CEO at Stream
Review ofGoGo

Go has been a joy to work with. Performance is often 30x of what we used to see with Python. It's a performant and productive programming language: https://getstream.io/blog/switched-python-go/

How developers use C# and Go
Avatar of Karma
Karma uses GoGo

The first time I actually started using Go was for software on our devices. So on our hotspots we have some custom software running in the firmware. For the first device, that was actually completely built by our manufacturer. But for the second generation most of the parts are built by us in-house and we needed a way to quickly develop software for the device. But we don't have any C programmers in-house, so we were actually looking for something that basically sits in between the friendliness of Ruby, but the performance and the ability to be deployed on an embedded system which you get with C. That's basically what led us to Go and it's been awesome for that. It works so well and so great. Since it works so great, it pushed us into looking into whether we should start using this for some backend services as well.

Avatar of Arbor Health, LLC
Arbor Health, LLC uses C#C#

C# is the most productive production language - it exposes a lot of functional conveniences along with the robustness of strong typing. And they're finally embracing the open source community - a huge plus.

#Language Features We use the basic syntax (for, foreach, if,while) and object oriented constructs (classes, very simple inheritance).

We also use lambdas and block methods extensively, an intermediate level programming construct, but in a very formulaic and predictable way.

Avatar of Flutter Health Inc.
Flutter Health Inc. uses GoGo

The following basic API endpoints are implemented on the server written in Go:

  • Authorization (Sign Up, Sign In)
  • Update user profile
  • Community: add post, like post, add comment, delete post, add reply to comment
  • Self-diagnosis: send data from the app to the server
  • Journal: send user data from the app to the server
  • Add groups of community
  • Report post, report comment, report reply
  • Block user
Avatar of Zinc
Zinc uses GoGo

We wrote our own image processing, resizing, and snapshotting service in Go to allow our clients to send photos and GIFs to each other. Files are stored in S3, resized on the fly using OpenCV, and then cached in GroupCache before being served to clients.

Go allows it all to be quite fast and efficient, and entirely non-blocking on uploads!

Avatar of Diggernaut LLC
Diggernaut LLC uses GoGo

Our main web scraping engine is built usign Golang because of the way how efficiently and fast this language is. Also out compilation facility let people who dont know Golang build fast as flash scrapers to run ourside of our platform without any knowledge in programming in Golang.

Avatar of Refractal
Refractal uses GoGo

For some of our more taxing parts of our applications, something able to handle high I/O load quickly and with fast processing is needed. Go has completely filled that gap, allowing us to break down walls that would've been completely impossible with other languages.

Avatar of Promethean TV
Promethean TV uses C#C#

PrometheanTV has used .NET and C# for several back-end applications and services including the Morphic Video Task System utilized to stream video assets to a variety of video delivery platforms including, Akamai, Brightcove, and others.

Avatar of Jonathan Bro
Jonathan Bro uses C#C#

Unity3d builds the app and scripts are written in C#. It receives first class support from the Unity3d developer and most plugins exist in C# in comparison to Javascript (the other supported scripting language)

Avatar of Matt Welke
Matt Welke uses C#C#

Used to create personal projects that call for a more organized approach to software architecture. Great stable 3rd party libraries in NuGet for tasks like creating web apps (ASP.NET Core) and IoC containers.

Avatar of Carbonmade
Carbonmade uses C#C#

The main Carbonmade backend / API is written in C# and is ready to run on the CLR. We currently host on Windows but are preparing to migrate to Linux when the CoreCLR stabilizes.

How much does C# cost?
How much does Go cost?
Pricing unavailable
Pricing unavailable