Dependency Injection is most important feature. The Dependency Injection or IOC Inversion of Control is core for all Spring Modules.
We can use DI to develop loosely coupled applications. The loosely coupled applications can be easily unit tested.
Spring MVC Framework provides decoupled way of developing web applications. With simple concepts like DispatcherServlet, ModelAndView and ViewResolver, it makes it easy to develop web applications.
The problem with Spring and Spring MVC is the amount of configuration needed.
Spring Boot solves this problem through a combination of Auto Configuration and Starter Projects.
Spring Boot also provide a few nonfunctional features to make building production ready applications faster.