Строка очень размытая, ИМО, и слово каркас часто сводится к маркетинговому термину. Например, .Net Framework предоставляет как набор библиотек (например, код, который вы можете вызвать, в ответе Натана Хьюза), так и нечто, для чего вы пишете код, который вызывает ваш код.
Когда я лично думаю о фреймворке, я думаю о чем-то, что дает некоторые подсказки относительно структуры вашего кода. Он сообщает вам, какие компоненты вашего приложения могут существовать и как они могут взаимодействовать, или где они могут находиться в файловой системе, даже.