They are two parts of the same whole.
Introspection refers to the ability of a class to look "inside" and see, for example, what parameters the method takes, what are the names of its members, etc.
Reflection is a specific name for how .NET implements introspection. Other languages ββmay call it something else (C ++ calls it limited introspective RTTI for runtime type information).
source share