You're close. Paul is right, lose the for loop. Don't worry, loop() will be called again real soon. More like this:
void loop()
{
unsigned long currentMillis = millis();
// for (int i = 0; i <=255; i++){ //<-- delete this line
if (currentMillis - previousMillis > interval) {
previousMillis = currentMillis;
analogWrite (led, i++); // <-- increment i here
Serial.println (i);
}
// } // <-- delete this line
}
-br