Для создания экземпляра объекта да вам всегда нужно использовать новый. При этом, если по какой-то причине вам это не нравится, вы можете создать статический метод загрузки в своем классе, содержащий ключевое слово new. Это не меняет того факта, что вы используете новое, но скрывает его. Примерно так:
public class Animal
{
private Animal(){}
public static Animal Load()
{
return new Animal();
}
public void Eat()
{
Console.WriteLine("Animal eats for living.");
}
}
Или вы можете просто создать статический класс.