Suppose that half of the network nodes now want to expand the block size from 2MB to 3MB.
If a 3MB block is sent to the old version of the node, the block will be rejected; because the rules of the old version of the node explicitly state that 2MB is the upper limit of valid blocks. At this point, the old and new versions of the network are no longer compatible and there are two branches of the blockchain.
At this point, there are two network protocols, each using a different currency. The balance of all accounts is cloned from the original record to the new chain; users who had 20BTC before the fork will have an account on each of the two branch chains with a balance of 20BTC and 20 new BTC, respectively.