Что почитать - не знаю, нам курс для нубов в университете преподавали.
О технических рисках должно быть сказано в "почитать". Если в целом - то в неумелых или неаккуратных руках приложение может стать очень ненадёжным.
Особенностей настройки, по крайней мере, в msvc, - всего одна. Нужно компилировать с многопоточной версией библиотеки crt. А отладка практически ничем не отличается.
Использование потоков в целом оправдано в любой операционной системе. Лишь бы это использование отвечало тем целям, которые преследует многопоточность. У Герба Саттера было неплохое введение в его курсе по параллелизму, которое разделяет типы задач, решаемых с помощью параллелизма:
"Pillars of Concurrency"