По моему мнению, MVVM не усложняет приложение, оно просто организует код в отдельные области. Конечно, есть кривая обучения о том, как этого добиться. В WPF есть десяток способов выполнить одну задачу, поэтому, если вы не знакомы с лучшими практиками и тем, как работает WPF, это может показаться очень сложным. Я считаю, что для того, чтобы действительно использовать MVVM, вам нужно понимать WPF. Я считаю, что лучшая книга для этого - эта. Она начинается с самого начала и сравнивает winforms с WPF, а затем проходит через все типы элементов управления и помогает вам понять их роль. Вы не получите привязки к данным до середины книги. Это долгое чтение, но если вы действительно хотите использовать WPF и использовать MVVM, я считаю, что это важно.
Также этот пример статьи приложения MVVM является хорошим началом для понимания MVVM.