OK.
Just to clear the etymology up (a little).
As mentioned, English has roots from many different languages. Even different types of languages: Nordic, Indo-European, Semitic, Romance, Celtic, Native American, etc.
The spoken language changes much faster that the written form. Thus these superfluous letters were at one time, pronounced.
Now, in the original languages the letters may have different pronunciations than they do in English which may well explain why they are silent.
An example is "kn". We pronounce it as the letter "n" with the "k" being silent. It originally had a sound which combined the two as did "gn" "gh", etc., etc.
As these sounds were difficult to pronounce, they changed to a simpler pronunciation.
For a current example of how this phenomenon happens take the word "often". Some people pronounce the "t", some don't. And either way is correct.
Now you know much more than you probably wanted to
Something for the word geeks.