c# Best way to communicate between classes
<p>Right now I am coding an application and am thinking that there has to be a better solution to what I am doing right now.</p>

<p>I have a main window which shall handle the settings of the program. Then I have further classes and windows. For example a language handler class and a form that is handling the user input needed for the "main function".</p>

<p>However, until now I always have to pass my main window to each of this classes, because the language handler shall be able to change the main window's strings. And the other form should also be able to pass data to the main Window.</p>

<p>If we imagine there will be much more classes and every class needs a copy of the main window this would consume a lot of resources depending on the main window's "size".</p>

<p>So, is there a better/more efficient way to communicate between these classes.</p>
