Opportunistic networks aim to deal with the unpredictable environment for data communication. Messages in opportunistic networks need to be stored with the node in the absence of any suitable forwarder. With such a storecarry-forward paradigm, it aims to eliminate challenges of no pre-determined/ fixed connectivity, absence of direct/in-direct routes from source to destination, and high error rate and delay in the network. Node carrying message roams in the network to find a suitable forwarding node. In this study, the survey for various routing protocols and mobility models for opportunistic networks is discussed along with tools available for simulations of opportunistic networks. Further, various challenges in opportunistic networks such as storage management, congestion management, and energy constraints are discussed. Many applications for the opportunistic network, along with real-time case study, are presented in the paper. The objective of the study is to provide future direction to the researchers, along with the systematic review. Hence, future objectives are discussed to mitigate the challenges faced in the current scenario. Also, based upon the study, it is observed that most researchers have taken epidemic, ProPHET, and spray and wait routing protocols as their base of study. Performance analysis for these protocols is done using opportunistic network environment (ONE) simulator.