The .NET Framework CLR files are located in the following folders under
v1.0.3705 v1.1.4322 v2.0.50727 v4.0.30319
v3.5 as well, but they contain only additional libraries, not the CLR.)
Note that the framework versions .NET 4.0, 4.5, 4.5.1, 4.5.2, 4.6 and 4.6.1 are all stored in the
v4.0.30319 folder. Obviously, since they are all upgrades to 4.0, this makes sense from a backwards-compatibility point of view.
In that case, what's the point of calling it
v4.0.30319 instead of
v4.0 or, more appropriately,
v4? Isn't the point of a build number to provide an additional layer of versioning within a minor version?
The same was done with 3.0 and 3.5, which were upgrades to 2.0, so it's not like they didn't know that the build (and even the minor) number is going to change through updates. They did it again for v4, so there must be some good reason for it.