From time to time you wish to alter the sort of an exception, then trying to keep the original exception as inner exception is the best you can do. Nevertheless it should be throw new MyCustomException(myMessage, ex); not surprisingly. throw is for rethrowing a caught exception. This may be handy if you would like do something Together with the