GnuCash is a program to keep track of your finances. Its features include:
Multiple Accounts. Create a GnuCash account for each of your bank accounts. Each account maintains both a running balance and a reconciled balance, so you can keep track of the checks that have cleared your account.
Simple User Interface.
If you can use the register in the back of your checkbook, you can use GnuCash. Type directly into the register, tab between fields, and use quick-fill to automatically complete transactions.
Automated Tools for Reconciling Accounts.
At the end of the month, open up the reconcile window, enter the ending balance from your bank statement, and check off the transactions that appear in the bank statement. This agrees what you have recorded in GnuCash with what your bank has reported, and makes it easier to track down any discrepancies.
QuickFill.
If you begin typing in the description field, and the text matches a previous transaction, hitting TAB will copy in that previous transaction. This is a handy time saver if you regularly create similar transactions.
Stock/Mutual Fund Portfolios.
Track stocks individually (one per account) or in portfolio of accounts (a group of accounts that can be displayed together). There are tools to automatically collect stock quotes.
Support for multiple currencies and currency trading accounts. (partial, still broken). Bank accounts may be established in different currencies, and trades at varying exchange rates may be made, in much the same way stocks trade at varying prices.
Imports Quicken-style QIF files. The import wizard automatically merges duplicate transactions.
Reports. Display or output as HTML Balance, Transaction, and Profit/Loss reports, as well as graphical account balance tracking.