Может лучше будет, чтобы ты создал для каждой машины универсальный идентификатор? Будет в разы проще работать с ними и результат выполнения будет максимально точным (так ведь возможно, что точно такую же машину в гараже будет больше 2 и при вызове функции твоя система может удалить совсем не ту машину, которую нужно).
А это ответ на твой вопрос
public void DeleteCar(string carModel, string color, double speed, int yearOfIssue)
{
Car car = cars.FirstOrDefault(c => c.CarModel == carModel && c.Color == color && c.Speed == speed && c.YearOfIssue == yearOfIssue);
cars.Remove(car);
}