Why is there an option to choose full or subset .Net 2.0 library ?

Recently when I experimented with named pipes for the first time, I recognized that the namespace System.IO.Pipes wasn’t recognized by VS for Unity, so I had to change the Api Compatibility Level from subset .Net 2.0 to full .Net 2.0.
Just out of curiosity: Why is using the full version causing bigger file size as stated here:

Isn’t using the full version not just given access to more namespaces? So as long as you don’t use them nothing should change (except maybe longer compling time)? I actually compiled a small program with subset and with full set, and the file size were exactly equal. So my question is:
What is even the point of having the option to choose? If you don’t use any of the additional capabilities it won’t change anything so why not having the full version available all the time?

I’d say it has to do with them being compiled into a DLL each, which can only be used as a whole. did you make use of any .NET stuff in your test project, because it might not even include either of them.