Qual è un buon identificatore univoco del PC?

Ho esaminato il codice in questo tutorial e ho scoperto che utilizza My.Computer.Name per salvare le impostazioni che non dovrebbero effettuare il roaming tra computer. È tuttavia ansible che un utente abbia due PC identici. Ad esempio, se volevano avere lo stesso nome utente su ciascun PC, potrebbero finire con due PC denominati Username-PC.

Quali sono alcuni buoni metodi per identificare diversi PC? I PC hanno dei GUID associati a loro, o dovrei cercare di estrarre il numero seriale da qualche hardware? Non mi interessa se l’identificazione persiste attraverso la reinstallazione di Windows.

(Il tutorial che ho linkato è in VB.Net, ma lo sto implementando in C #)