What it is
The EVM is a virtual computer defined by the Ethereum protocol. ethereum.org describes it as a decentralised virtual environment that executes code consistently and securely across all nodes. Developers write contracts in a language such as Solidity, compile them to bytecode and deploy that to the chain. When someone calls the contract, each node runs the bytecode inside its own EVM.
Why determinism matters
For thousands of independent nodes to agree, the same input must always produce the same output. The EVM is designed as a deterministic function of its input and the chain's state. It executes opcodes on a stack, and its memory does not persist between transactions, which keeps each execution isolated and reproducible.
Gas and limits
Running arbitrary code on every node would be dangerous without limits. The EVM charges gas for each operation and stops execution if the supplied gas runs out. This both pays for the work and prevents infinite loops or abuse. It is the reason complex transactions cost more.
EVM-compatible chains
Many other networks implement the EVM, including scaling networks built on top of Ethereum and independent chains. That compatibility means the same contract code and the same style of address and wallet work across them, although each chain has its own state, fees and security. Funds on one EVM chain are not on another, even if the addresses look identical, so always check which network you are using before you send.
What the EVM does not do
The EVM does not decide which transactions go in a block or who is paid; consensus and the fee market handle that. It only executes the code that a transaction calls, in a sandbox, and reports the new state. Keeping those jobs separate is what lets many chains reuse the same execution environment with different consensus rules.