I think that C# is an attempt at creating an alternative for enterprise level programming to Java, basically .net and C# are an answer to the whole Java ecosystem.
They're competing for the same space, so a business that wants to implement some functionality from scratch basically has these two solutions to choose from.
In the 'web' domain there are many many more choices, but for places like banks and such that were first dominated by COBOL, then reluctantly moved to C or C++, for the most part they are either looking at Java or C#.
Care to elaborate (I'm legitimately unsure what you mean, not being snarky)?