Please read:How are new Bitcoins created?
The reward for solving a block is automatically adjusted so that in the first 4 years of the Bitcoin network, 10,500,000 BTC will be created. The amount is halved each 4 years, so it will be 5,250,000 over years 4-8, 2,625,000 over years 8-12 and so on. Thus the total number of coins will approach 21,000,000 BTC over time.
And to answer your other question:
Who ever has the most computers or better hardware gets the most BitCoins.
Sure; if you had 90% of the money in the world, you could buy up 90% of the computing power and get 90% of the Bitcoins. So ... you'd have the same proportion of Bitcoins as you do real world money. Seems reasonable.
Computers cost money, so having the most power computers equates roughly to having the most money. So, why shouldn't those who invest heavily in mining reap a proportional reward?
And having the most Bitcoins doesn't help you. The value of those Bitcoins is dictated by those willing to accept them, not by the person with the most Bitcoins.