I've read a little about BitCoins and think the idea is very interesting. I was wondering what is required to generate a block? I assume there is some software you need. Do I also need an account somewhere like Mt Gox?
MtGox is an exchange (i.e. a place to sell and buy bitcoins for USD, EUR, GBP, etc.). If you want to get a few coins quickly you can buy them there.
To generate blocks you need to use your computer's processing power (this is called mining). Currently, it is very hard to produce a block by yourself so most people mine in group and split the rewards (pool mining). Check this question for more information:
To generate a block you need to run a Bitcoin network node (such as the standard Bitcoin client) and a miner (mining software) such as poclbm. The rewards for blocks you generate will be automatically delivered to an address controlled by your node, you do not need any external account.
That's the theory though, in practice what you'll want to connect your miner to a mining pool, and let the pool handle receiving rewards and delivering them to an address of your choice (which could either be controlled by a local client or an eWallet service). And, to do this with any effectiveness you will need suitable hardware such as an ATI graphics card.