Я бы согласился, что статья не MVC. Это скорее реализация модели наблюдателя. Шаблон наблюдателя в .NET может быть реализован с помощью событий, как это было в статье.
MVC требует класс контроллера, который управляет тем, какое действие выполнить по запросу, сделанному либо из модели, либо из представления. Применение MVC - очень хорошая практика программирования, так как она значительно способствует разделению интересов. У вас будет более понятное, расширяемое и тестируемое приложение с mvc. Еще один момент, на который стоит обратить внимание: вы все равно можете применить шаблон наблюдателя к приложению MVC. Они не будут противоречить друг другу.
===========
Чтобы ответить на ваш второй вопрос: какая модель лучше? Я думаю, что ваш подход к разработке программного обеспечения довольно неправильный. Вы не должны слишком сильно беспокоиться об этих вещах, пока не столкнетесь с проблемой. например Если этот объект меняет состояние, мне нужны эти другие объекты, чтобы реагировать на него, поэтому я бы реализовал шаблон наблюдателя.
Если бы я был тобой, я бы сначала начал со стороны модели, а потом все взял.