According to the documentation for System.Assembly:
The LoadFile and LoadFrom methods are provided for rare scenarios in which an assembly must be identified by path.
They suggest that you would more commonly load an assembly by its display name (for example, "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089").
This doesn't make any sense to me. If you wanted to reference an assembly by its version and public key, you would add a reference at compile time; you wouldn't be loading it at runtime using the Assembly class. The typical scenario for loading an assembly at runtime is when you're loading a plug-in, which would be done by path -- since you're either scanning a directory for plug-ins, or reading some kind of manifest that says where they're located.
Why do the docs say that, among scenarios where you're dynamically loading an assembly, loading it by path is "rare"? As far as I can tell, it's loading it by display name that would be rare.