Need advice about which tool to choose?Ask the StackShare community!

.NET

5K
3.7K
+ 1
1.7K
Spring Boot

13.8K
11.7K
+ 1
841
Add tool

.NET vs Spring Boot: What are the differences?

.NET: A free, cross-platform, open source developer platform for building many different types of applications. .NET is a general purpose development platform. With .NET, you can use multiple languages, editors, and libraries to build native applications for web, mobile, desktop, gaming, and IoT for Windows, macOS, Linux, Android, and more; Spring Boot: Create Spring-powered, production-grade applications and services with absolute minimum fuss. Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.

.NET and Spring Boot can be categorized as "Frameworks (Full Stack)" tools.

"Tight integration with visual studio", "Stable code" and "Great community" are the key factors why developers consider .NET; whereas "Powerful and handy", "Easy setup" and "Java" are the primary reasons why Spring Boot is favored.

.NET and Spring Boot are both open source tools. Spring Boot with 39.8K GitHub stars and 25.8K forks on GitHub appears to be more popular than .NET with 11.1K GitHub stars and 2.4K GitHub forks.

Stack Exchange, Microsoft, and Starbucks are some of the popular companies that use .NET, whereas Spring Boot is used by MIT, Intuit, and PedidosYa. .NET has a broader approval, being mentioned in 1566 company stacks & 239 developers stacks; compared to Spring Boot, which is listed in 333 company stacks and 615 developer stacks.

Decisions about .NET and Spring Boot
Ing. Alvaro RodrĂ­guez Scelza
Software Systems Engineer at Ripio · | 11 upvotes · 51.1K views

I was considering focusing on learning RoR and looking for a work that uses those techs.

After some investigation, I decided to stay with C# .NET:

  • It is more requested on job positions (7 to 1 in my personal searches average).

  • It's been around for longer.

  • it has better documentation and community.

  • One of Ruby advantages (its amazing community gems, that allows to quickly build parts of your systems by merely putting together third party components) gets quite complicated to use and maintain in huge applications, where building and reusing your own components may become a better approach.

  • Rail's front end support is starting to waver.

  • C# .NET code is far easier to understand, debug and maintain. Although certainly not easier to learn from scratch.

  • Though Rails has an excellent programming speed, C# tends to get the upper hand in long term projects.

I would avise to stick to rails when building small projects, and switching to C# for more long term ones.

Opinions are welcome!

See more
Hampton Catlin
VP of Engineering at Rent The Runway · | 7 upvotes · 69.7K views

Starting a new company in 2020, with a whole new stack, is a really interesting opportunity for me to look back over the last 20 years of my career with web software and make the right decision for my company.

And, I went with the most radical decision– which is to ignore "sexy" / "hype" technologies almost entirely, and go back to a stack that I first used over 15 years ago.

For my purposes, we are building a video streaming platform, where I wanted rapid customer-facing feature development, high testability, simple scaling, and ease of hiring great, experienced talent. To be clear, our web platform is NOT responsible for handling the actual bits and bytes of the video itself, that's an entirely different stack. It simply needs to manage the business rules and the customers experience of the video content.

I reviewed a lot of different technologies, but none of them seemed to fit the bill as well as Rails did! The hype train had long left the station with Rails, and the community is a little more sparse than it was previously. And, to be honest, Ruby was the language that was easiest for developers, but I find that most languages out there have adopted many of it's innovations for ease of use – or at least corrected their own.

Even with all of that, Rails still seems like the best framework for developing web applications that are no more complex than they need to be. And that's key to me, because it's very easy to go use React and Redux and GraphQL and a whole host of AWS Lamba's to power my blog... but you simply don't actually NEED that.

There are two choices I made in our stack that were new for me personally, and very different than what I would have chosen even 5 years ago.

1) Postgres - I decided to switch from MySql to Postgres for this project. I wanted to use UUID's instead of numeric primary keys, and knew I'd have a couple places where better JSON/object support would be key. Mysql remains far more popular, but almost every developer I respect has switched and preferred Postgres with a strong passion. It's not "sexy" but it's considered "better".

2) Stimulus.js - This was definitely the biggest and wildest choice to make. Stimulus is a Javascript framework by my old friend Sam Stephenson (Prototype.js, rbenv, turbolinks) and DHH, and it is a sort of radical declaration that your Javascript in the browser can be both powerful and modern AND simple. It leans heavily on the belief that HTML-is-good and that data-* attributes are good. It focuses on the actions and interactions and not on the rendering aspects. It took me a while to wrap my head around, and I still have to remind myself, that server-side-HTML is how you solve many problems with this stack, and avoid trying to re-render things just in the browser. So far, I'm happy with this choice, but it is definitely a radical departure from the current trends.

See more
Ing. Alvaro RodrĂ­guez Scelza
Software Systems Engineer at Ripio · | 8 upvotes · 121.1K views

Decided to change all my stack to microsoft technologies for they behave just great together. It is very easy to set up and deploy projects using visual studio and azure. Visual studio is also an amazing IDE, if not the best, when used for C#, it allows you to work in every aspect of your software.

Visual studio templates for ASP.NET MVC are the best I've found compared to django, rails, laravel, and others.

See more
Pros of .NET
Pros of Spring Boot
  • 261
    Tight integration with visual studio
  • 250
    Stable code
  • 180
    Great community
  • 171
    Reliable and strongly typed server side language.
  • 132
    Microsoft
  • 108
    Fantastic documentation
  • 82
    Great 3rd party libraries
  • 71
    Speedy
  • 65
    Great azure integration
  • 57
    Great support
  • 25
    Highly productive
  • 24
    Linq
  • 23
    High Performance
  • 22
    Great programming languages (C#, VB)
  • 21
    C#
  • 19
    Open source
  • 13
    Powerful ORM (EntityFramework)
  • 13
    Powerful Web application framework (ASP.NET MVC)
  • 13
    Clean markup with razor
  • 11
    Fast
  • 9
    Visual studio + Resharper = <3
  • 9
    Constantly improving to keep up with new trends
  • 8
    Dependency injection
  • 7
    TFS
  • 6
    Job opportunities
  • 6
    High-Performance
  • 6
    Integrated and Reliable
  • 6
    Security
  • 5
    Huge ecosystem and communities
  • 5
    Light-weight
  • 4
    Lovely
  • 4
    Variations
  • 3
    Scaffolding
  • 3
    Support and SImplicity
  • 3
    {get; set;}
  • 3
    Asynchrony
  • 3
    Concurrent
  • 3
    Useful IoC
  • 2
    Default Debuging tools
  • 2
    Entity framework
  • 1
    Blazor
  • 127
    Powerful and handy
  • 121
    Easy setup
  • 111
    Java
  • 83
    Spring
  • 79
    Fast
  • 39
    Extensible
  • 32
    Lots of "off the shelf" functionalities
  • 27
    Cloud Solid
  • 21
    Caches well
  • 19
    Many receipes around for obscure features
  • 18
    Modular
  • 18
    Productive
  • 17
    Integrations with most other Java frameworks
  • 16
    Spring ecosystem is great
  • 16
    Fast Performance With Microservices
  • 14
    Community
  • 13
    Auto-configuration
  • 11
    Easy setup, Community Support, Solid for ERP apps
  • 11
    One-stop shop
  • 10
    Easy to parallelize
  • 9
    Cross-platform
  • 9
    Easy setup, good for build erp systems, well documented
  • 8
    Easy setup, Git Integration
  • 8
    Powerful 3rd party libraries and frameworks
  • 2
    Kotlin
  • 2
    It's so easier to start a project on spring

Sign up to add or upvote prosMake informed product decisions

Cons of .NET
Cons of Spring Boot
  • 9
    C#
  • 9
    Too expensive to deploy and maintain
  • 7
    Microsoft itself
  • 6
    Microsoft dependable systems
  • 3
    Hard learning curve
  • 1
    Not have a full fledged visual studio for linux
  • 18
    Heavy weight
  • 17
    Annotation ceremony
  • 10
    Many config files needed
  • 7
    Java
  • 5
    Reactive
  • 4
    Excellent tools for cloud hosting, since 5.x

Sign up to add or upvote consMake informed product decisions

What is .NET?

.NET is a general purpose development platform. With .NET, you can use multiple languages, editors, and libraries to build native applications for web, mobile, desktop, gaming, and IoT for Windows, macOS, Linux, Android, and more.

What is Spring Boot?

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.

Need advice about which tool to choose?Ask the StackShare community!

What companies use .NET?
What companies use Spring Boot?

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

What tools integrate with .NET?
What tools integrate with Spring Boot?

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

Blog Posts

Git.NETCloudBees+3
6
848
Vue.jsSpring Bootvuex+7
2
883
What are some alternatives to .NET and Spring Boot?
ASP.NET
.NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
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!
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.
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.
See all alternatives
Interest over time
News about Spring Boot
More news