If I don\'t split my app into different modules (otherwise I would argue that Prism would defo be the way to go) should I use Prism?
I know that Prism gives a convenient
For smaller apps, caliburn micro provides a simpler framework. To me prism is especially useful when you need to define regions in your application.
For a small application you could definitely see it as overkill, but even for a small application you have identified some useful aspects e.g. DelegatedCommand
and IEventAggregator
(which BTW come with weak event handling so not totally trivial to implement correctly).
Perhaps a more light-weight framework might be more suitable. I only know Prism, so can't really comment.
One point I would make though, is that it is very common for small applications to start small, but then evolve into bigger applications. Putting the relatively small amount of effort into architecting it right in the first place is better than paying for the monumental (and sometimes impossible) task of sorting it out later.
MVVM Light is the best bet....!