Allocating 48MB of RAM for an Ubuntu Server VM running a LAMP image is reasonable. 96MB seems more than enough for a single-user development environment. The VM hard drive image should be about 1GB.
The foremost issue is getting the console display to appear correctly in Virtual PC 2004. Edit /boot/grub/menu.lst to change the first entry in the list of Automagic Kernels such that:
kernel /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro quiet splash
becomes
kernel /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro quiet splash vga=0x314
You can also hit ESC during the GRUB boot sequence and set vga=0x314.
Install hung at times. It was probably looking for updates on the network but the virtual networking was not working. This command made ping work as expected:
sudo ifconfig eth0 192.168.254.33
The IP address in the example above, 192.168.254.33, should be entered in the Windows HOSTS file for machine/netbios name resolution. Edit the HOSTS file here:
%SystemRoot%\\System32\\DRIVERS\\ETC\\HOSTS
To install new software, the recommendation here is to use APT. See "Package management with apt" here:
https://help.ubuntu.com/community/AptGetHowto
An excellent summarizing source for Ubuntu Linux hardware tips is "Unofficial Ubuntu 5.10 (Breezy Badger) Starter Guide":
http://ubuntuguide.org/wiki/Ubuntu#Hardware
This was useful for understanding, say, how accessing a CD-ROM drive works in Linux.
What may prove to be useful is "Linux Guest Support for Virtual Server 2005 R2" covered here:
http://www.microsoft.com/windowsserversystem/
virtualserver/evaluation/linuxguestsupport/default.mspx