Solidity compiles into Bytecode.
Smart Contract languages on Tezos compile into Michelson.
This diagram shows the architecture of Contract ABI, EVM bytecode and outside components(dApp and network). The left side is a process of compiling and the right side is interacting.
But how exactly does this work in Tezos with Michelson? Michelson makes sure that everything is executed as it should before modifying the storage. Solidity will modify the storage. Is this the big advantage over Solidity and the Bytecode?