I think I understand the main parts of the Bitcoin blockchain. While I was explaining the concept to my girlfriend she asked me why groups of transactions are actually stored in a block? Every transaction is verified by every node, so why do we need blocks?
I had no answer to her question, so maybe a greater mind than me can explain why the blockchain needs the transactions to be stored in blocks?
A block is just an arbitrary grouping of transactions. It makes a convenient chunk of data for a proof-of-work to be performed on. You could hypothetically do the proof-of-work on the transactions themselves, and then chain them one after the other. This, however, would fail miserably. Blocks must reference the previous block, so if you just go by single transactions instead of blocks, you'd have wait for the proof of work on each transaction. It means that you could only have a single transaction on the network per target time for the proof-of-work algorithm. It's a terrible solution in terms of scaling. This would also create other problems, particularly having to do with a miner's incentives, and the censorship-resistant nature of the network. Groups of transactions are better to work with.
The short answer is that the "verification" done on every transaction by every node is preliminary and incomplete. It guarantees that the tx more-or-less makes sense, but it doesn't guarantee that the tx is in sync with the network and that it doesn't contradict other txs.
Synchronizing the transactions to make sure there are no contradictions - in other words, that there is no double-spending - is the hard part, and the reason it took so long to invent Bitcoin. The way it was solved in Bitcoin is by a chain of blocks which aggregate txs and are voted on with Proof of Work, as you can study in detail by perusing technical explanations of the blockchain.