The Fifth Generation (5G) Network will bring different types of services, namely: EMBB, mMTC and URLLC and as more devices connect to the network, each user device request for data capacity will continue to grow. The increase in the number of devices and capacity request for each device will require an increase in network capacity, which will also need an increase in the number of Base Stations in the network. More Base Stations will increase the the Mobile Network Operator’s capital investment and operation costs. However, this increase in CAPEX and OPEX will not provide a corresponding increase in ARPU as users tend to be less willing to pay more as their capacity request increases. Mobile vendors and Mobile Network Operators will face the challenge of providing higher capacity for the same or less ARPU for their customers to maintain their customer base and maintain the business profitability. C-RAN was identified as a new and promising paradigm to help Mobile Network Operators reduce their CAPEX and OPEX while delivering higher capacity to their customers and maintaining business profitability. How C-RAN resources are allocated and managed within the 5G network will determine how efficient and profitable this optimisation process will be. In this article, we provide a high-level review of the crucial enabling 5G Technologies and an exhaustive review of C-RAN resource allocation algorithms for 5G networks with emphasis on resource allocation metrics/parameters. The main resource allocation metrics considered in this work include BBU computational/processing resource, capacity, Power/ energy consumption, wavelength, UE-RRH mapping and RRH-BBU mapping. Furthermore, Energy Harvesting in 5G C-RAN is discussed, including its architecture, categorised taxonomy and requirements. Lastly, future research directions and open research issues for efficient C-RAN resource allocation are highlighted.