Is delay() necessary in loop()?

If you need a little hint about how to do things without a delay(), search for a sample called "blink without delay." Typically, delays are not needed or wanted.