Я видел, как все три подхода работают хорошо.
Что иногда может быть хорошо, так это начать с A, затем, когда сложность возрастает, перейти к B, затем C.
В простых проектах «бизнес-объекты» могут быть включены в тот же проект, что и уровни представления и персистентности - хотя это может показаться ересью, определение объектов с использованием различных пространств имен может обеспечить достаточное разделение между «слоями».
Возможно, вы захотите пересмотреть использование .NET Remoting - WCF, безусловно, является лучшей технологией и намного проще в использовании.