New answer (nine years later)
There is now several overloads for Activator.CreateInstance that allow you to use non public constructors:
Activator.CreateInstance(typeof(YourClass), true);
true
= use non public constructors.
.
Old answer
Default constructors are private for a reason. The developer doesn’t make it private for fun.
But if you still want to use the default constructor you get it by using reflection.
var constructor = typeof(Bob).GetConstructor(BindingFlags.NonPublic|BindingFlags.Instance, null, new Type[0], null);
var instance = (Bob)constructor.Invoke(null);
Edit
I saw your comment about testing. Never test protected or private methods / properties. You have probably done something wrong if you can’t manage to test those methods/properties through the public API. Either remove them or refactor the class.
Edit 2
Forgot a binding flag.