Why cant Prince William marry a Catholic?
According to the Settlement Act of 1701, an heir to the British throne must be a) decended from the Electress Sophia of Hanover; b) born in wedlock; c) protestant; and, d) if married, married to a protestant. As head of the Anglican Church, the monarch cannot be a Catholic, and since the monarch and his or her spouse will presumably produce the next monarch, the spouse must not be Catholic either. William currently meets all of the criteria to become monarch, but if he marries a Catholic, he makes himself ineligible and Harry would take his place in the order of succession (assuming Harry has not also married a Catholic).