Garnicht! Du hast in C# keine Möglichkeit direkt auf die Blöcke der Festplatte zuzugreifen.
Also müßtest du dir eine unmanaged DLL mit C++ oder einer anderen Sprache schreiben und ggf. sogar einen eigenen File-System-Treiber. Dann kannst du diese in C# einbinden.
Gerade der Sinn von .Net ist es eine höhere Abstraktionsebene zur Verfügung zu stellen so das sich der Programmierer nicht um Eigenheiten der Plattform kümmern muss und sich aufs Wesentliche (seinen Aufgabenstellung) konzentrieren kann.
Als Ergänzung zur Antwort von Floyd: Wenn du sowieso auf externe Tools oder Bibliotheken zugreifen musst, dann schau dir SDelete von Windows Sysinternals an. Das könntest du mit den entsprechenden Parametern bestückt aufrufen.
Das Problem ist, das trotzdem ein magnetisches Echo auf dem Datenträger zurückbleiben kann welches mit entsprechend empfindlichen Sensoren ausgelesen werden könnte.