If you reduce the main clock speed by 50% then everything else is reduced by 50% as well.
The whole chip runs at half the speed. That includes things like the UART.
For example, the bootloader is set to run at 115200 baud on a 16MHz chip. If you run that same chip, with the same bootloader, at 8MHz then the bootloader will actually be running at half the baud rate, so 115200 / 2 = 57600 baud.
Unless you tell the IDE that your board is now running at 8MHz (by creating or using the correct board configuration information to set F_CPU to 8000000) then time runs at half the speed in your sketches too. So a delay of one second will last two seconds. Every two milliseconds a single millisecond will pass. And again baud rates will be wrong. If you use:
Serial.begin(9600);
you will actually be running at half that speed (4800 baud) and so you would have to set your serial terminal program to that speed instead of the one you requested.
To to do things properly you will have to:
- Replace the crystal
- Edit, compile, and install a new version of the bootloader that runs at 8MHz
- Create (or edit) a suitable board definition (in boards.txt) to compile sketches that expect to run at 8MHz.