Modern societies are facing an ageing problem that is accompanied by increasing healthcare costs. A major share of this ever-increasing cost is due to fall-related injuries, which urges the development of fall detection systems. In this context, this paper paves the way for the development of radio-frequencybased fall detection systems, which do not require the user to wear any device and can detect falls without compromising the user's privacy. For the design of such systems, we present an activity simulator that generates the complex path gain of indoor channels in the presence of one person performing three different activities: slow fall, fast fall, and walking. We have developed a machine learning framework for activity recognition based on the complex path gain. Additionally, we propose a novel method that accurately estimates the instantaneous Doppler frequency (IDF) from the complex path gain. Then, we extract six features from the IDF and provide the feature vector as input to the classifier, which has to predict the user's activity. We assess the recognition accuracy of four different classification algorithms: K-nearest neighbors (KNN), decision tree, artificial neural network (ANN), and cubic support vector machine (SVM). Our analysis reveals that the KNN, decision tree, ANN, and cubic SVM achieve an overall recognition accuracy of 86.1%, 94%, 98.9%, and 99.9%, respectively. The best performing algorithm, cubic SVM, has a fall detection accuracy of 100% with zero false alarms and zero undetected falls, which represents the best achievable performance. By comparing our fall detection system with existing ones in the literature, we demonstrate the superiority of our proposed solution.