Spring vs Spring Boot: What's the Difference?
This is less a "which to choose" comparison and more "what does Spring Boot actually add on top of Spring" -- a very common interview question.
Side-by-Side Comparison
| Spring Framework | Spring Boot |
|---|---|
| Manual bean configuration (XML or Java config) | Auto-configuration based on your classpath |
| Requires a separately installed servlet container | Ships an embedded server -- run with java -jar |
| More setup boilerplate to get a working app | A working REST API from a single @SpringBootApplication class |
| Full control over every configuration detail | Sensible defaults, with full override capability when needed |
Which Should You Use?
For any new project today, Spring Boot -- there's essentially no reason to hand-configure plain Spring from scratch anymore. You're still using Spring Framework underneath either way; Spring Boot is built on top of it, not a replacement for it. The distinction mostly matters for understanding legacy codebases (some older enterprise systems still run on plain Spring configured manually) and for interviews, where explaining the difference clearly is a common question.