Es gibt z.B. Probleme mit relativen Pfaden, bei solchem Vorgehen.
Hatte ich auch schonmal so gemacht, aber im Grunde ist es nur eine Krücke, um mit POS, einer Funktion, welche das Erste sucht, das Letzte zu suchen, anstatt etwas zu verwenden, was das Letzte sucht.
Pos/PosEx in einer Schleife (immer noch schneller, als ein/zwei mal ReverseString)
Wobei das zweite ReverseString garnicht nötig ist, wenn man die gefundene Position mit Length verrechnet, um direkt aus dem originalen String zu kopieren,
aber
string.LastIndexOf
string.LastDelimiter
oder, wie es Uwe bereits zeigte, also Pfadnamenfunktionen, zum Extrahieren des letzten Namen.