Mern stack vs .net

Hey everyone,
I know there’s a lot of experienced and helpful developers on here and I want to hear their suggestions regarding the path to web development.

A few nights ago I bumped into an ex software developer at my current place of work (‘work’ is a non IT firm). He was trying to explain the benefits of .NET and how he only needs to know one language e.g. C# to write any application - be it software, web development, game etc… - and that .NET has all sorts of libraries and frameworks and all I need to learn is C# and SQL to be able to make anything and everything. He said he never had to bother with JavaScript much, just for tweaking here and there if needed.
I have been Googling and Youtube-ing .NET and it seems that it is a difference of opinion as to what to learn/master and that large IT firms have always worked on .NET where as start-ups tend to go for JavaScript and the MERN stack.

At the moment I am at a crossroad and don’t know which way to turn. My instincts say I have invested a lot of time learning HTML/CSS/Sass/Bootstrap/JavaScript/jQuery and made a few simple projects. So it would be a shame to leave that and start over again with .Net. I understand I can use the skills and would still be needed to write in the mentioned languages/mark-up/frameworks/libraries and ultimately I would need to learn SQL at some point.

So my question is: should I trust my instincts and carry on? Or move to .NET and C# where things are, supposedly, simpler and less time-consuming? What’s your experience if you’ve worked in both technologies - do you favour one over another? Employability prospects?

Your insights would be greatly appreciated.

There is an old saying: “those waiting for the latest car model are still cycling.” Translated into web development is that there will always be a “better” way to do things. But if you move to C#, somebody will tell you to move to XYZ. And next will tell you to move to ABC. And so on…

So, if you are satisfied with your current stack. Stick to it :slight_smile:

1 Like

I’d ignore instincts and take a risk based approach to knowing what would be the most beneficial for you at this time.

Assuming you’re learning this stuff to get a job, I’d start by looking at the prevalence of jobs for each technology in your area. One of the good things about .NET, is its easily categorized. There are “.NET Jobs”, making filtering and finding them easy. From there, you can compare how prevalent those jobs are, with the requirements for them. If there’s a lot of “.NET jobs”, but all of them are looking for years of real world experience, then it wouldn’t matter if there are a lot.

You can take this approach with whatever competing technologies you have in mind, or even see what kind of overlap there is, if there is one.

Ultimately the answer of which is “best” is relative to your own situation.

What you’ve learned is just core fundamentals with front-end web development. This sort of experience would carry over with .NET development, but you’d still need to learn more about .NET and the back-end.

I personally have mainly worked with web technologies, and a little C# for game development. I haven’t looked much into .NET much, so I can’t offer much help in that regard, but I have worked much more heavily in web-tech.

The web technologies you’ve mentioned wont go anywhere, as they are the fundamentals of the web. Bootstrap, and jQuery are more libraries that might not be useful, or used at all, but their ideas may be transferred over to whatever CSS and JS libs you may end up using on the job.

Off the top of my head, I don’t think .NET projects don’t normally use a front-end framework, so something like React isn’t used often, so the bare-bones front-end technologies you’ve mentioned might be enough for the few cases where you need to do client-side logic using JS.


In summary, look into your job prospects, and see what they are looking for. If things are rather equal in terms of opportunities, I’d consider other factors, like how much time do you have to learn. As the best option is actually learn everything, and keep as many doors open as possible. You don’t need or want to commit to a single path early on, as that closes other doors on other opportunities later.

This is especially true when it comes to programming, if you learn how to program with C# or JavaScript, you can take that experience into another language/environment and wont need to learn as much.

So keep learning, keep building, good luck :+1:

This is true 100%. There will always be something out there that someone will try to pull our legs into.

You’re echoing my thoughts. As you said - the best thing is to learn everything and never close doors.

I have been searching job sites and it seems that there more junior/entry level jobs in the JavaScript path compared to .NET - and pay seem to be higher.

I ultimately believe, as I have read numerous articles online, that a developer may start with front-end technologies but then find themselves in a totally unrelated technology in 10 years time or have shifted to another field of IT. So it doesn’t really matter where someone begins their early baby steps. But I just wanted to hear some hardcore FCC champions’ opnions :stuck_out_tongue:

I think I will carry on with JavaScript and continue the journey started - and I honestly enjoy it, though very slow at times and lots of burn outs.

Thank you for your detailed reply :slight_smile:

I actually had somewhat of an opposite journey in that regard.

I went to college and took a few classes on Java, which was then used in other classes as the main langauge. I also learned a little about other types of languages, like C.

However, I personally went off and learned Python, as I thought it was a good counterpoint to Java along with liking the idea behind Python’s more lenient approach.

Once I got around to looking into the job market, and leveraging whatever opportunities I had, I actually ended up learning and using more JavaScript than anything else, even though my school didn’t provide any resources for that language, or very much resources on web development in general.

Today I do web development with a different language built on JavaScript, TypeScript and technologies.

Lots of knowledge from the different languages I started with still carried over to what I do today, so its not like there is any concept of “starting over”, rather you just start approach the same issues from different angles. Some are more dramatic than others, but generally most of the common language’s are very similar to each other, with only a few major differences that need to be considered.