Об'єктно-орієнтоване програмування (ООП) відрізняється від процедурного програмування в першу чергу тим, що основний акцент ставиться не на алгоритми, а на розробку структур зберігання і управління даними.
Згідно з об'єктно-орієнтованого підходу будь-яка програма являє собою набір взаємодіють один з одним об'єктів, що мають стан і поведінку.
Розробка програми зводиться до визначення цього набору об'єктів.
Фреймворк - каркас, структура.
Каркасний підхід - це такий підхід до побудови програм, де будь-яка конфігурація програми будується з двох частин: перша, постійна частина - каркас, не змінний від конфігурації до конфігурації і несе в собі гнізда, в яких розміщується друга, змінна частина - змінні модулі (або точки розширення).
Каркас став єдиним для всіх мов середовища. Тому, якою б мовою програмування ні велася розробка, вона використовує класи однієї і тієї ж бібліотеки. Багато класів бібліотеки, використовуються всіма мовами. Звідси єдність інтерфейсу додатків, якою б мовою вона не розроблялося.
В каркасі Framework .Net можна виділити два основних компоненти: