O display inline ele alinha os elementos um ao lado do outro, porém... não permite colocarmos o altura nem largura nos elementos. O display inline-block ele tb alinha os elementos e permite estilizar a altura e largura do elemento, porém... teríamos trabalho, fazendo contas, para chegarmos nas medidas ideais para colocar no margin. O display float, ele permite alinhar o elemento a direita ou esquerda, mas os outros elementos da página sobem, encavalando, onde teríamos, bastante trabalho para alinhar, ele tb não permite usarmos a propriedade vertical-align, então teríamos que usar o margin-top ou bottom para alinharmos, teriamos que usar números "mágicos", para chegar nas medidas que queremos.
Então o flexbox veio para nos ajudar a melhorar nosso código, apesar de ser relativamente novo, onde precisamos tomar cuidado com navegadores mais antigos, mas, ele com menos códigos conseguimos alinhar nossos elementos.