The main difference is that futures are standardized and traded on a public exchange, whereas forwards can be tailored to meet the specific requirements of the purchaser or seller and are not traded on an exchange.
The standardization of futures contracts generally refers to the expiration date and the contracted amount. For example, euro (EUR) futures contracts are available with quarterly expiration dates: the months of March, June, September and December, while the contract size of each euro future is 125,000 EUR. On the other hand, forward currency contracts are not restricted by size or value date, and therefore oftentimes can meet the needs of investors more precisely.
Additionally, investors have to pay for the futures contract and may need to post certain margin requirements; whereas there is often no initial outlay needed for a forward currency contract, as in many cases collateral is not required. As such, an investor using forward currency contracts may be free to deploy funds into various investments until the value date of the contract.