Today I was designing some unit tests for a project here at work, and needed to access some helper methods (mostly constants) to check the output of a few methods, and was happy to discover this attribute.
With InternalsVisibleTo you can specify which assembly, if any, other than the current one, can "see" information marked as internal.
As I said, it's very useful when designing tests, or for example if you want some component to be accessed only by another (the same use you give to internal, but expanding across several assemblies)
You can use it at assembly level like this
[assembly: InternalsVisibleTo("JMF.Tests")]
Where JMF.Tests is the Assembly Friendly Name