TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. It adds optional static typing, classes, and interfaces to JavaScript to help catch errors. TypeScript code is converted to JavaScript code during compilation. Angular 2.0 is written in TypeScript to take advantage of its static typing and other features. TypeScript allows programmers to write object-oriented programs and have them compiled to JavaScript, enabling both server-side and client-side development.