You are looking for Activator.CreateInstance (there are also other overloads, such as this one that accepts constructor arguments). So you could write
var anotherOneLikeMe = Activator.CreateInstance(this.GetType());
There may be a problem here in that anotherOneLikeMe
is going to be typed as object
, so unless you intend to cast it to a common base class (e.g. BaseClass
in your example) there's not much that you can do with it.