find . -type f -not -name '*.html' -maxdepth 1 -exec rm '{}';
For me, performance doesn't matter that much.
I usually deal with 100..2000 files each time and running time
isn't much different.
One should measure the total time from the split-second in which
your brain decided what you want to do and until you see the
next command prompt :)
This is why it's useful to have simple basic blocks (with short
names :) that do the job.