Чем string.Empty отличается от String.Empty?
string это алиас для System.String. Сравнить можно с int и System.Int32. Поэтому разницы нет. Разве что подсветка слова другая. String будет как класс подсвечивать.
Сведём вопрос к "Чем string отличается от String?"
https://docs.microsoft.com/en-us/dotnet/csharp/lan...The following table shows the keywords for built-in C# types, which are aliases of predefined types in the System namespace. 
string - кейворд для стандартного типа данных, определённый в стандарте языка, String (он же System.String) - класс, предоставляемый CTS. В коде на C# это одно и то же, но лучше использовать string.