There are many differences and similarities between Java and C#. A list of top differences between Java and C# are given below:
||Java is a high level, robust, secured and object-oriented programming language developed by Oracle.
||C# is an object-oriented programming language developed by Microsoft that runs on .Net Framework.
||Java programming language is designed to be run on a Java platform, by the help of Java Runtime Environment (JRE).
||C# programming language is designed to be run on the Common Language Runtime (CLR).
||Java type safety is safe.
||C# type safety is unsafe.
||In java, built-in data types that are passed by value are called primitive types.
||In C#, built-in data types that are passed by value are called simple types.
||Arrays in Java are direct specialization of Object.
||Arrays in C# are specialization of System.
||Java does not support conditional compilation.
||C# supports conditional compilation using preprocessor directives.
||Java doesn't support goto statement.
||C# supports goto statement.
||Java doesn't support structures and unions.
||C# supports structures and unions.
||Java supports checked exception and unchecked exception.
||C# supports unchecked exception.