Arduino did not reconnect if run first time without internet

No idea if you already do this… but…

It is not enough to use just Blynk.config(), you also need to isolate Blynk.run() so that it only executes when there is a Server connection, else it will stall out each loop cycle while trying to reconnect.

void loop() {
  if (Blynk.connected()) {  // If connected run as normal
    Blynk.run();
  }
// do all other loop stuff
}