Some more details as far as my experience and expectations.

Experience:
I've been using Linux for three years, I use the command line as often as 
I can.  I've never used BSD, but I'm open to new experiences.

Expectations:
I want this file server for a couple of reasons.
1) I want to gain experience in administering a server, and I figure that 
this will be a good way to gain some experience in dealing with servers on 
my own time. 
2)I want to install Winblows XP Pro on my second machine, but I want to 
save a bunch of files from it, so I will need something that can talk to 
both Winblows, *nix, and, if possible (though not necessary at all), 
computers running OS' from Apple Inc.

Hardware:
Off the top of my head, my hardware for the server is 1.25 gigs of RAM, 
Asus MOBO, ~500 Gigs of HDD space, split between two PATA drives and a 
SATA drive, either 64MB or 128 MB GFX card (nvidia I believe), AMD Athlon 
2400 CPU.

Security:
For security, I'm thinking ssh/tls, possibly scp.  As far as security of 
the OS, I'm thinking of installing ipcop, or relying on iptables.  Beyond 
that, I would rather have more options for security than I need, instead 
of having more needs than I have options.


Misc:
I am not really looking into backup solutions or raids at the moment, as I 
am piecing this server together from parts I already have, and HDD space 
is (relatively) limited.  Also, when I said "best," I should have said 
"better suited to the task," what with "best" being relative.

So I hope that helps clarify what I'm looking for, and I apologize if it's 
long-winded, I tried to make it as short as possible.

Thank you for the help, KH.