C# 2.0 added the ability to make one assembly the friend of another. A friend has access to the internal members of the assembly of which it is a friend. This feature makes it possible to share members between selected assemblies without making those members public. To declare a friend assembly, you must specify the friend assembly’s name (and possibly its public key token) in an InternalsVisibleTo attribute.