Eu estou iniciando na programação Java e essa questão me veio a cabeça.
Cara a grosso modo, spring é uma linguagem de programação e spring boot é uma ferramenta(um eclipse melhorado) onde facilita a integração de varias tecnologias
Spring é um framework usado no java que resolve diversos problemas utilizando técnicas, como injeção de dependência, inversão de controle,contêiner e etc… No caso, para implementar ele em seu projeto é necessário fazer diversas configurações, por exemplo: se quisemos fazer com que o spring converse com jpa e hibernate, há inúmeras configurações que devemos fazer. Com este problema em mente surgiu o spring boot que venho para resolver as múltiplas configurações básicas necessárias, você especifica o que você quer em seu projeto e ele já monta com tudo configurado.
https://projects.spring.io/spring-boot/
startando seu app:
https://start.spring.io/
Mais?
Acho que faltou a característica mais importante do spring boot, ele possui um container de aplicação embarcado, ou seja, vc não precisa instalar um tomcat, jetty ou qlq outra coisa standalone pra ter uma aplicação web rodando com ele. Existe um plugin maven que ao executar a goal mvn spring-boot:run, já se inicia o processo de compilação e execução da aplicação.
Além de ser extremamente fácil de configurar, como o pessoal já mencionou, ele faz uso de uma classe com método main para execução.
É um bom framework!