Yes.
You'll need more than one partition, though. Your first partition should be Windows XP (NTFS), Windows 98 (FAT32), or whatever version of Windows you want (note that only 2000 and XP, maybe Vista can support reading Linux partitions). Your second should be where you install Ubuntu (or whatever version of Linux you want, I use Ubuntu), it should be an ext3 partition. You'll also need a Linux Swap partition, keep it small (1GB or lower) as you don't want to spend a lot of hard drive space on swap.
If you have multiple hard drives in one PC (I do, an 80GB and a 120GB), you'll probably want to use the smaller one for the OS'es themselves, then format the others as a FAT32 or NTFS partition (because Linux can read all FS'es natively while Windows can only use FAT, FAT32, and NTFS). Then you can mount your hard drives in Linux. Newer distros like Ubuntu 7.04 and 7.10 beta can automatically mount the drives for you, if you have root password enabled, you'll have to enter your password first. Older distros (as well as newer ones that you want a more permanent mount) require you to either use the mount command or editing the fstab file, look online for help on that, I forget right now.
For accessing a Linux (ext2 or ext3) partition in Windows (only 2000 and XP are supported), get the driver at
Ext2 IFS For Windows (I think that's the site).
To edit partitions easily, grab yourself a copy of Ubuntu (7.04 or 7.10beta), burn the CD, then boot your PC from it (it won't affect your hard drives until you tell it to). In there is the GNOME Partition Editor (gparted) that you can resize, move, delete, and add partitions with.