Steve Pulsford from Kentucky USA wrote to the New Scientist magazine to ask this -.

I have two parents, four grandparents, eight great-grandparents and so on. If I drew a family tree going back ten generations, I would have to make space for a top line of 1024 ancestors. At thirty generations I would expect to see a line of over a billion ancestors. If I tried to research back forty generations (1000 yrs) or to 1000 A.D. I would be searching for the names of vastly more people than have ever lived. This is impossible, of course, but everyone has two parents, so what exactly is wrong with my reasoning?

 

The answer, of course, is that we all share the same ancestors and are all related! People married cousins and other family members, therefore sharing grandparents. You just have to study a well known family tree such as the Royal Family's to see the answer.