在C#中,最好使用新异常,因为新异常提供了更多的功能和灵活性。新异常可以包含附加信息、内部异常、堆栈跟踪等,这些信息有助于更好地理解和处理异常情况。此外,新异常还可以继承自现有的异常类,使异常处理更加灵活和可定制化。因此,建议在C#中尽量使用新异常来抛出和处理异常情况。