Forward and reverse proxies secure and isolate resources that reside on a private network, but they play different roles in modern enterprise architectures.
A forward proxy provides proxy services to a client or a group of clients. At times, these clients belong to a common internal network. When one of these clients makes a connection attempt to that file transfer server on the Internet, its requests have to pass through the forward proxy first.
Example usage: Content filtering, Accessing restricted geo-locations, Web scraping
A reverse proxy does the exact opposite of what a forward proxy does. While a forward proxy proxies in behalf of clients (or requesting hosts), a reverse proxy proxies in behalf of servers. A reverse proxy accepts requests from external clients on behalf of servers stationed behind it just like what the figure below illustrates.
Example usage: Load balancing, Caching, Additional level of protection for backend servers