Yes, I agree with you. C# has obvious signs of its evolution (most notably, things held over from Java). Mads Torgersen has even said that if he were building C# from scratch, he wouldn’t feel the need to adhere as closely to traditional C/Java syntax.
But while I agree with your analysis, I don’t see it as a huge flaw. In my experience, there are “purer” languages that don’t meet with this problem, but then they have other headaches. (Maybe their syntax is so different from other languages that it dissuades experienced programmers from giving it a try. Or their less-tested approaches meet with new problems. Or people just aren’t as familiar with their paradigms and conventions.) C# gains a lot from the fact that it’s “just another” C-syntax language, with a Java-like class library. The cost of that advantage is some conceptual fuzziness.