If you're a Java developer, then you might've tinkered a little bit with .NET here and there. Perhaps you've played around with C#, or maybe you toyed with VB. It's possible that you've heard about some of the many similarities and differences between .NET and Java, but it's been difficult to have a concrete answer on how the two co-exist. This site will try to help. It assumes you have a solid foundation in Java and are interested in getting to know .NET a little more intimately.
Here's a visualization of the architecture of a .NET application with all its components:
You'll come to learn that everything you're used to doing in Java you can do in .NET as well, and that you'll even get some cool perks with .NET that you can't find in Java. It's important to get a good conceptual understanding of how the two platforms are similar and how they're different to make the learning path in .NET smoother and faster.
C# is a type-safe, object-oriented programming language that is simple yet powerful and enables you to build a breadth of applications. There are many similarities, as well as some notable differences, between Java and C#. With a background in Java, you can become productive with C# in very little time.