User303363814 posted
It's also useful to use Path.Combine to join one or more directories and a filename. You don't have to worry about leading/trailing separators. So if you code is actually
string appRoot = callToSomeConfigMethod();
string dataFolder = "data";
string filename = "myfile.txt";
Then your check would be better written as
File.Exists(Path.Compbine(appRoot, dataFolder, file));
you can have as many parameters to Path.Combine as you need and it doesn't matter if they start/end with the Path.DirectorySeparatorChar character - Path.Combine works it out.