When I'm not exploring fresh caves or lands in minecraft, I'm busy trying to find deposits of diamond, gold and iron deep in the earth. So far I've just been digging around just above bedrock on a whim to look for these rare minerals but I've started thinking that I should be taking a more controlled, efficient approach to mining.

**What is the optimal mining strategy that yields the most rare minerals while minimizing blocks removed and time spent digging and traveling?**

**Edit:** The existing answers are great for mining, but no one has addressed travel time to and from the mine which is usually ~60 blocks downward and incredibly tedious. Solutions?
['https://gaming.stackexchange.com/questions/8310', 'https://gaming.stackexchange.com', 'https://gaming.stackexchange.com/users/1070/']
If you're not married to building a completely man-made mine, the answer is to find a deep tunnel.

Getting down to the bottom is correct, as that is where the highest concentration of useful minerals is located, but digging a tunnel doesn't expose you to nearly the same amount of blocks as using a generated cave system.

In my primary game, I dug a mine down to the bottom, clearing out a large amount of stone, which only resulted in some coal, and very few iron, where as at the bottom I discovered a cave network (filled with lava, but some water solved that), which resulted in a large amount of coal and iron, as well as diamond and gold.
I've dug straight down to bedrock as well and at the bottom carved out a 40 long by 20 wide room 4 high. This netted me a full stack of redstone, lots of lava. 2 diamond, lots of coal, almost no iron.

The straight down to bedrock approach I find is really good for redstone but not much else. I find that in the generated caves there is a lot more ore along the walls. So you really need both I think.

I've made a waterfall going down my vertical bedrock mine shaft and shoot up to the top with a boat for fast surface access.