I don't think learning the names of classes/methods implemented in a framework is something enjoyable and useful for your future career. It is especially true for .NET Framework which is, today, really huge, not counting the set of additional Microsoft libraries you can install.
The drawback of this approach is also the fact that you'll quickly forget the most stuff you learned. Can you really retain hundreds and hundreds of names?
Another drawback is that you'll have to learn stuff you never need. For example why would I learn how to extend Visual Studio, if I'm not ready to create Visual Studio extensions? It's even worse when it comes to obsolete code.
Instead, search for the appropriate classes when working on a project. Object Browser, in Visual Studio, has a good search capability which is very helpful for that. In addition you have Google, and of course Stack Overflow.
you learn one day that there is a
System.Web.Script.Serialization. So what? Can you remember it forever? Will you try to understand why and when is it useful? Do you really understand immediately that this has something to do with JSON?
you're writing an application which must parse JSON. You open Object Browser and search for JSON. You find that there is an implementation for MVC projects, and also a
Deserialize<T> methods. Now you can really appreciate those classes and choose what is more appropriate for your project: the MVC implementation or the