Библиотека - набор из модулей (или даже одного) для решения какой-то одной или нескольких определённых задач.
Фреймворк - в целом каркас для приложения.
Очень часто фреймворк диктует то, как в итоге приложение будет устроено, или как будет устроена какая-то его часть, которая этот фреймворк использует. (не просто же так слово frame-рама в названии)