Because XMPP always took ages to implement basic features such as server history, encryption, file upload, group chats etc. and even then they had multiple competing standards. This had only recently been solved by few individuals, however the problems with this is that those individuals are very opinionated. Not a bad thing in itself, but ensures that certain other features will never be implemented.
Matrix in contrast control the reference server and the reference client, and have enough resources and internal diversity to implement a diverse featureset.
And, XMPP never tried to solve efficient multicast problem.
i think it needs to try be what xmpp/irc isn't and rather push to compete with discord.
add some more rich media features like screen sharing etc. and make it simple to use for non-techies.
make the gamers adopt it and the rest of the masses will follow, otherwise it will stay in the realm of corporate team chat and weird federated communities.
I would think features like screen sharing are better off using a message passing protocol like XMPP instead of a state synchronization protocol like Matrix.
The promise is decentralization and ppl starting to realize it is a good idea. The technology seems to be very sound, it is open-source, the transfer of Gitter to the Matrix foundation (?) brings a lot users, client apps are descent etc