Angular is a client side framework developed by Google for building single page applications. It uses TypeScript for development and supports development for multiple devices and browsers. Angular applications are comprised of components, which contain templates for presentation logic and classes for data binding. Core directives like ngFor and ngIf are used to manipulate DOM elements conditionally based on data. Services provide reusable business logic through dependency injection.