I am adding my name to the list of developers who have not heard about the InternalVisibleTo attribute. I came across this while checking out Derik Whittaker's blog in response to the email I got saying that Derik will be presenting at this month's Milwaukee area .Net Users Group.
The InternalVisibleToAttribute was added in .Net 2.0 and most people seem to be using it in order expose internal methods to external unit test classes. However, there is nothing to prevent you from using it in non-testing situations., although I have not seen a good reason other then unit testing to use it.
The MSDN documentation talks about the special case of applying the attribute to a strong named friend assembly. This is also a C# only attribute.