If you have only one computer there may not be much need for file sharing; however, in many homes people have multiple systems and may wish to transfer files between them, either on the same network or in two different locations. There are a variety of ways to do this, but ultimately there are three basic transfer options: direct networking, Internet services, and the use of local devices.
Direct networking uses standard sharing protocols such as AFP, SMB, or FTP on a basic TCP/IP connection to view and copy files. It can be done over Wi-Fi or Ethernet, and with modern "zero-configuration" technologies such as Apple's Bonjour you only need to turn on File Sharing and the system will auto-discover networked systems and display available shares.
To use direct networking, go to the Sharing system preferences and check the box next to File Sharing. You can optionally set up custom shared folders, but OS X by default will share all files with administrator accounts and user files with standard "managed" accounts. The default protocol used is Apple's AFP protocol, but you can click the Options button in the File Sharing system preferences to enable additional services, including SMB for Windows networking, and FTP as a legacy (but universally recognized) option.
You will need to know an account name to use to log in to the system. While your administrative account and password will allow you to view all files on your system, you can also set up a "Sharing only" account that can be used to log in to a system via the network and view designated shared folders, or to enable the Guest account and govern this account's access by modifying the "Everyone" permissions on shared folders.
With file sharing set up, make sure the two systems are on the same network: you should see them appear in the Finder sidebar's Shared section (unless you are connecting via FTP). If they do not appear, you can press Command-K in the Finder to bring up the connection window and enter the IP address of the computer you are connecting to in the address field, using one of the following formats:
In these addresses, IP_ADDRESS is that of the computer you are trying to connect to (this will be shown in the File Sharing options in the system preferences), which is preceded by the protocol you are using.
If there is no established network for two computers, you can still connect two systems by creating an ad hoc network between them. For Ethernet connections the simplest option is to just connect both systems with the same Ethernet cord. The systems will self-assign IP addresses that are compatible, so you should see the other systems show up. For Wi-Fi options you can create a network with one computer by choosing Create Network from the AirPort system menu, giving the network a name and optional password, and then clicking OK. The other computer should then be able to locate and connect to this network from its AirPort menu.
You can also create ad hoc networks between computers using Bluetooth connections or FireWire cables, but these options are slower than Wi-Fi and Ethernet options.
If both computers are connected to the Internet, you can use various Internet-related services to transfer files. These can include online disks, e-mail accounts, and dynamic DNS services that allow a computer in a home or workplace to be ever-present as a server to computers anywhere on the Internet.
Apple provides such a service with its Back to My Mac option, bundled with MobileMe, which will conveniently place a link to your home system in the Finder, but there are other ways to get connected to your work and home Macs as well. These include using a service like DynDNS.com where you can set up a personal domain name and have that be constantly updated with your router's IP address if and when it changes. With this setup you will be able to connect to your router from anywhere in a manner very similar to using direct networking methods, though it will require you to set up port forwarding on your router.
Here are the ports used for the various file-sharing protocols supported in OS X:
AFP: 548 (TCP)
SMB: 139, 445 (TCP)
FTP: 20, 21 (TCP)
In order to use a dynamic DNS service, in addition to linking your router to the service you will need to set up your computer's file sharing similarly to the way you would set up direct networking. When you connect, instead of using "IP_ADDRESS" as stated above, use the URL provided by the dynamic DNS service.
Online disks such as Apple's iDisk can also be used to make files available via the Internet; and there are other options as well, including Dropbox and ADrive and some purely browser-based services. While convenient, these services are usually limited to a few gigabytes unless you pay a subscription fee. Lastly, you can use file transfer options that are available in some Chat programs such as iChat, AOL Instant Messenger, MSN/Windows Live Messenger, and Skype, though these programs require you to set up a buddy list and have the same program running and controlled interactively on both systems to establish the transfer, and as such are not very practical.
Likely the simplest option for transferring files between systems is to use a local device such as an external hard drive, a flash drive, or a CD or DVD. If you have a cheap USB flash drive you can easily connect that to copy files to another drive, or if you have an external USB or FireWire hard drive you can use it in a similar way. In addition you can use any USB device with a Mass Storage option (including cameras and camcorders). If you use CDs or DVDs, you will need to purchase blank ones, which can be a bit cumbersome given the other options available these days.
Flash and external hard drives will need to be in a format that OS X can view in order to copy files. If you are transferring between Mac systems, the preferred and most supported option is to have the drive formatted to HFS+ (Mac OS Extended), but if you are transferring between a Mac and a PC then the next best option is to use the FAT format. Apple supports reading and writing to both of these, but if you have a third-party driver for an alternative filesystem format such as NTFS (provided by installing NTFS-3G), then that is an option as well. Keep in mind, however, that if you use an unsupported filesystem then only computers that have the driver for it installed will be able to fully read or write to it.
The last option when using local devices is to use FireWire Target Disk Mode for a Mac, which turns its internal hard drives into FireWire drives that can be connected to another Mac via a FireWire cable. To use Target Disk Mode your system needs to have a FireWire 800 or 400 port, a cable, and optional adapters to connect the system to another one via FireWire. Then restart one system and hold down the T key until you see the FireWire symbol appear on the screen. When this happens your system is now essentially an external hard drive, and can be connected to another one with your FireWire cable and adapters, and it should mount on the external system. Be aware that this will make all of your personal and system files (including hidden ones) available to the second system, so be careful you do not inadvertently modify important files when in this mode.