Question: Was C# compiler written in C++?

Answer: 
Yes, but there are plans to write a C# compiler in C#, which I believe was discussed in [this podcast](http://deepfriedbytes.com/podcast/episode-27-present-and-future-of-the-csharp-language/).
Yes it was - as majority of CLR. If you want to see the internals of CLR and/or compilers I would strongly recommend Shared Source CLI from Microsoft (aka Rotor):

* [Microsoft Download](http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en)
* [Wikipedia](http://en.wikipedia.org/wiki/Shared_Source_Common_Language_Infrastructure)
* [Shared Source Internals book](http://callvirt.net/blog/entry.aspx?entryid=b9a94d0c-761a-4d6b-bc2f-d6a5f8c1a4a7)

But, there is actually a compiler written in C#. I believe that [Mono](http://www.mono-project.com/Main_Page) is written that way. Download [Mono sources](http://ftp.novell.com/pub/mono/sources-stable/) and find out for yourself.