What happens to XMR sent to an unexisting address? Is it sent back? Is it lost forever, but if yes where does it go? It still has to show up somewhere in the blockchain...
An 'unexisting address', probably due to a typo, would mean that there would be no known private keys corresponding to the address that funds were sent to. This should be protected against to some degree, because every Monero public address has an in-built checksum to help prevent typos. Since it's impossible to determine private keys from a Monero address, the private keys for this 'unexisting address' will never be able to be determined.
Funds can be sent to any valid address, and it's impossible for the sender or any observer to know the difference between an existing and an 'unexisting' valid address. If funds were sent to such an address, they would still show up on the blockchain as arriving at a fresh "one-time" address. Under normal circumstances, the owner of the destination Monero wallet address would then be able to scan for the presence of any such one-time addresses that are destined for them. They would then be able to determine the private keys necessary to take control of these funds destined for them, and spend the funds when desired.
However, since no such person would exist, the funds would just sit on the blockchain unspent. Since it's impossible to know when funds on the blockchain have been spent or not (due to Monero's privacy mechanisms), no one would know the funds are sitting there forever in limbo. It would not be possible for the sender to recall the transaction, since Monero transactions are irreversible.