I found this question asked a lot in forums so I thought I should answer it here. Getting the physical path of the website can be done using Request.PhysicalApplicationPath. The following code also lists the sub directories of the website and how many files each one has.
string websitePath = Request.PhysicalApplicationPath;
System.IO.DirectoryInfo serverDir = new System.IO.DirectoryInfo(websitePath);
System.IO.DirectoryInfo subDirectories = serverDir.GetDirectories();
Label1.Text = websitePath;
foreach (System.IO.DirectoryInfo subDirectory in subDirectories)
Label1.Text += "<br />" + subDirectory.Name + ": " +
subDirectory.GetFiles().Count().ToString() + " Files";