In the notes about Exceptions it says that if 'startIndex is less than zero or greater than the length of this instance' then the ArgumentOutOfRangeException is raised.
Shouldn't this be 'startIndex is less than zero or greater than the length of this instance - 1' since the String class methods are 0-based, and this is clearly stated in the Remarks?
The notes about Exceptions for SubString(Int32,Int32) much clearer.