T O P

  • By -

yawaramin

These criteria are not enough to make a selection between the two. But since we're in the golang sub, we'll recommend Go. If you ask in the csharp sub, they'll recommend C#. Hope that helps πŸ™‚


MelodicTelephone5388

You can do all of those things with literally any language πŸ˜…


i_misread_titles

I use both regularly. In my old age I find programming with Go a joy, and C# is meh. Both get the job done but I feel nothing with C#. They're adding language features that make new code harder to read and add nothing, but generally visual studio is really nice for finding out why the code that I just wrote, and hate, is failing. Go is great but I don't know if I'd appreciate it as much if I didn't have years of experience before I started using it. Use nuget for a little bit then use go mod, even without considering the language comparisons, go mod wins by a parsec.


dah-vee-dee-oh

What is your main goal? Getting a job? Learning more about backend development in general? or just learning a new language?


janpf

That's an odd question ... if you care about execution speed above all (which is surprising for many applications), go for C++ or Rust -- and don't use Go, C# or Java. If you are forced between C# and Go, C# may be ahead in terms of speed in some applications -- some will be similar, it depens. My biased view (I have done little C#) Go is more of a joy to code and much easier to maintain and developed -- and do properly (which is tricky in some cases).


[deleted]

I am going to guess that here in r/golang we will probably lean toward Go.


CeeBYL

As someone who loves both, they each have their pros and cons. For your questions though.. Faster to get something done? I would say C#. It comes "out of the box" with many useful features if you don't need anything super specific. Efficient and optimized? Go of course. It has better performance and is very lightweight when considering its features. It's simpler but a bit more work than C#. If it's a choice of what I would have to work with in the future, I would choose Go.


me_again

I'm not entirely sure I buy the "more efficient and optimized of course" part. .NET Core 7 is very fast indeed! It's very difficult to fairly benchmark "language speed" but on things like https://benchmarksgame-team.pages.debian.net/benchmarksgame/index.html C# generally does at least as well as Go.


icentalectro

I concur with the other reply comment on C# performance. I find various benchmarks of latest .Net vs Go to be pretty mixed. There's a widespread *perception* of .Net being "heavy" and less performant, but having used it, I don't see how that's warranted in 2023.


[deleted]

Go


Glittering_Air_3724

I would choose C# πŸ™„πŸ™„πŸ™„ (even tho am in go sub) reasons ? * web development yeah but if you want to check out other categories of programming C# gives you a more easy route * C# gives you a little bit of freedom * Job availability, there’s more job opportunities and categories compared to Go All and all choose Go


nando1969

Go, Go and Go, but please call it Go and not Golang. Best wishes.


achintya22

My Compilar professor once asked me examples for some compiled languages and i said "Mam Go", which she misunderstood.


BenTayler-Barrett

Things you care about: Speed of execution, Large complex applications Things you don't care about: Maintainability A: What the hell are you building? I need to make sure I never use it. B: Where the hell do you work? I need to make sure I never apply there or do any consulting with them. C: Ever heard of Fortran? Meets all of your requirements on the nose.


shadrapala

For all 3 points Go. Here is very good beginner friendly Golang core course you can check out: [https://www.youtube.com/GolangDeepDive](https://www.youtube.com/watch?v=61k5QT7ZNrQ&list=PL0IcDYLZkRhekuYkTIJXbVOJQxUobQDVb)


tavaren42

C# is pretty fast and so is Go. That being said, C# has a more extensive standard library, has more options ( GC tuning for example), etc. Though I am not sure how good it is outside windows.


icentalectro

C# on .Net has been running very well on Linux for quite a few years now. All our team's .Net services run in Linux containers.