That's exactly what I'm talking about, and what I'm telling you is that things as elementary as brackets and if statement structures do not mean two languages' syntax is similar. Syntax encompasses everything of how the language is written-- how you carry out your orders to the machine. And they are written radically differently for each.
Computer languages work a lot like human languages, they really do. A lot of languages are based on Latin, but use different grammar structures, and a lot of words that exist in some languages don't exist in others. Some things can translate over fairly simply, but if you try to speak one language as you would another, it wouldn't make sense. if you try to write C# the same way you write C++, it wouldn't work. Again, this goes beyond the basic 30-something keywords and the variable->method->class structure.
Then you have stuff like VB that use a completely different base all together: IE Latin and Arabic.
Don't be an ass and say everything is derived from binary. I'm on to you
Edit: Just read your second edit. Maybe its just that with C++, its so easy to have a messy wall of code, while its easier to read Java or C#. But that's the point I'm trying to make. If they were similar enough to say "if you know C++, you basically know C#", then it would be just as easy to make a messy wall of code in C#. Its not, though. You almost have to try to make C# look nasty because of how clean the syntax is