You can use the Debugger.WriteLine method to see messages in the Debugger
Debugger.WriteLine("Don't use this method");
This is easily missed or ignored though. A more aggressive way of preventing this may be an assert.
Debugger.Fail("Are you sure you want to use this method?");
Yet another way to achieve this would be to mark the method as deprecated. This will result in a warning at compile time vs. debug time. You mentioned there are several places where it can be validly used. In those cases you could suppresse the deprecation warning with a pragma. This means only new uses of the method would cause a compile time warning which sounds like what you're after.