Yes, the members of the British Royal Family do have a surname, although they rarely use it in their day-to-day lives. The official surname of the British Royal Family is Windsor.
The surname Windsor was adopted by King George V in 1917, during World War I. Prior to that, the royal family had the German-sounding surname Saxe-Coburg and Gotha, which was derived from Queen Victoria's husband, Prince Albert. However, due to anti-German sentiment during the war, King George V decided to change the family name to something more British-sounding.
In 1960, Queen Elizabeth II issued a declaration stating that her direct descendants who are not using royal styles and titles would carry the name Mountbatten-Windsor. This addition of Mountbatten was to honor her husband, Prince Philip, Duke of Edinburgh, who was born Prince Philip of Greece and Denmark and belonged to the Mountbatten family.
So, while the official surname of the British Royal Family is Windsor, members often use their specific titles or styles, such as "Prince William" or "Princess Anne," rather than their surname in most public situations.