What to do when an enum name clashes with a class name?

Embed the enum in the class:

public class Pitch
{
    public enum Kind {
        Fastball, 
        Curveball, 
        Sinker
    }
}

You can then access it through the class:

Pitch.Kind.Fastball

Name the enum PitchType, PitchKind, PitchMagnitude, PitchQuality, PitchShape, PitchSpeed, PitchStrength or whatever fits best.


Another consideration is whether the class design could be improved. Instead of having a PitchType property inside the class Pitch, you could also create a class hierarchy:

public abstract class Pitch {}

public class Fastball : Pitch {}

public class Sinker : Pitch {}

public class Curveball : Pitch {}