Hallo und frohe Ostern,
Deine Frage berührt zwei Bereiche: "Funktion extra speichern" sowie "Hauptprogramm soll finden".
Zunächst einmal: wozu soll das gut sein?
Unter NET und C# gibt es keine "simplen Funktionen", sondern "nur Klassen" wegen des Prinzips der OOP. Alles, was geschieht, geschieht mit Objekten bzw. Instanzen von Klassen. Grundsätzlich gehört also eine bestimmte Funktionalität zu einer bestimmten Klasse und damit zu allen entsprechenden Objekten; in Ausnahmefällen kann eine Funktionalität auch zur Verfügung stehen unabhängig von einem konkreten Objekt - das sind dann statische Methoden bzw. statische Klassen.
Standardbeispiel für Letzteres ist die
Math-Klasse. Sinnvoll ist es auch, die Einzelheiten der
File-Klasse (statische Methoden für Dateien) und der
FileInfo-Klasse (Eigenschaften und Methoden für eine spezielle Datei) zu vergleichen.
Zusätzlich gibt es noch die Möglichkeit der
partial class, wie bei Formularen mit MainForm.cs und dem Designer-Code MainForm.Designer.cs. Zur Übersichtlichkeit kann man Methoden in weitere Teile auslagern; das geht nach dem gleichen Schema (wird aber relativ selten gemacht).
Zur Klärung Deines Klassenaufbaus empfehle ich Grundlagenliteratur, z.B.
OpenBook C# ab Kap.6.
Auch der zweite Bereich "Hauptprogramm soll finden" gehört zu den Grundlagen. Jedes C#-Programm benutzt mehr als eine Klasse; weitere Klassen gehören also entweder direkt in die Assembly (Solution, Projekt), oder sie werden über eine eigene Assembly erstellt und dann über die Referenzen einbezogen. Durch "using (Namespace-Name)" und Aufruf der Klasse bzw. Erstellen einer Instanz kann dann damit gearbeitet werden.
Aber wie gesagt, das sind so elementare Grundlagen... Bitte befasse Dich zunächst intensiv selbst damit; für konkrete Nachfragen (mit konkreten Informationen) stehe ich gern wieder zur Verfügung.
Jürgen