What's the harder way?
Well... you can modify the BOOT.INI file from Start->Run->msconfig... you need to enable /NOGUIBOOT (which disables the standard image and animated progress bar that are actually embedded to the Windows NT kernel), and add an argument /bootlogo to the list of boot arguments, to tell the system to use a provided bitmap image as boot logo instead.
Then you need to put a 16-colour bitmap file named boot.bmp into your Windows folder. Then the system will use that image when you boot the PC. IT isn't really hard, but it lacks the animation and it more laborous than installing the BootSkin or equivalent freeware program.
There is a third option, though - editing the WinNT kernel file (ntoskrnl.exe) with some tools, and replace the bitmaps 1, 8 and 10 embedded to that file with customized ones (1 is the main image, 8 is the progress bar chunks that move, and 10 is . IIRC they need to use the same palette as the old files (unless you want to edit the palette ALSO, which is embedded elsewhere into another system file as hex code), and I wouldn't really bother doing this. Besides, it's apparently illegal... Microsoft EULA forbids you to replace the Windows logo with your own. BootSkin and the method above do not replace the Windows logo in the kernel file, they override it AFAIK. So that's not illegal.

These are the ways I can think of. Some MOBO's apparently have trouble with BootSkin, but if it works it's the easiest way to customize your boot screen and it's free as well. So that's what I'm using.

Customizing the POST screen logo is another can of worms altogether...