Kotlin is a statically typed programming language that runs on the Java Virtual Machine (JVM) and is fully interoperable with Java. Some key features of Kotlin include being less verbose than Java, property-based accessors, lambdas and type inference, which allow code to be more concise and readable. Kotlin aims to be practical for building large applications and introduces modern language features while also having a smooth learning curve for Java developers.