You can still create non CLS-Compliant code in C#.  For instance, having 2 public members whose names only differ in case would cause it to be non-compliant (because VB.Net for instance does not support case-sensitive identifiers).  Check the AssemblyInfo.cs file for the following attribute:
[assembly:CLSCompliant(true)]
Here is one of the errors I get when I try to include SemanticCSharpParser class into my assembly:
Argument type 'ActiproSoftware.SyntaxEditor.TokenStream' is not CLS-compliant
Here is what the help says about the error
Argument type 'type' is not CLS-compliant
A public, protected, or protected internal method must accept a parameter whose type is compliant with the Common Language Specification (CLS).
The following sample generates CS3001:
// CS3001.cs
[assembly:System.CLSCompliant(true)]
public class a
{
   public void bad(ushort i)   // CS3001
   {
   }
   private void OK(ushort i)   // OK, private method
   {
   }
   public static void Main()
   {
   }
}