A virtual path provider is a way of delegating requests off to another data source.
So if you setup a virtual path provider for an empty directory to point at a network
share populated with files, it would appear that those files are in fact in the empty
directory (to someone browsing the site).
A very interesting example of a virtual path provider in ASP.Net 2 can be found here.
The example shows how subversion could be used as the path providers source.