Why does bitcoin mining take so long?
The entire purpose of proof-of-work mining is to force participants to spin their wheels doing busywork.  It takes about 10 minutes to mine a block because the difficulty automatically changes so that it always takes about 10 minutes to mine a block.  When more hashing power is added to the network, the difficulty increases to accommodate.  The time it takes to mine a block is intentionally set to 10 minutes.

You should read What exactly is Mining? for clarification.