In wireless communications, it is of utmost importance to exploit multi-user diversity and at the same time provide satisfactory quality of service for all users. However, these two goals often conflict with each other. On one hand, multiuser diversity is maximized by selecting the user with the best channel condition. On the other, ensuring fairness among users demands the allocation of network resources to those who do not necessarily have the best channel conditions. Whenever a user with a poorer channel condition is selected, there is a certain loss in the overall system throughput. The major objective of this thesis is to find scheduling algorithms that guarantee fairness with minimal performance tradeoff. First, we consider multi-user diversity in a multi-user MIMO system. When zero-forcing beam-forming transmission technique is used, the system needs to find a subset of users such that the transmission to these users results in the highest throughput. As the number of users grows, the complexity of the user subset selection increases exponentially. To address this issue, simple user-subset-selection algorithms have been developed that can perform well and are very close to the optimal ones found through an exhaustive search. Maximizing system throughput is a key factor in ensuring high network performance, but guaranteeing service provision to all users is no less important. To support fairness among users, cumulative distribution function (CDF) scheduling is utilized because of the its capability to precisely control allocation for each user. The CDF scheduling algorithm requires knowledge of the channel distribution among all users. However, the channel distribution or even an approximation of it is hard to obtain in real systems. In this dissertation, two classes of practical, CDF-based scheduling algorithms are developed. They are the non-parametric CDF scheduling (NPCS), used when the channel model is unknown, and the parametric CDF scheduling (PCS), used when the channel model is known. These algorithms are shown to frequently outperform the well-known Proportional Fair (PF) scheduling method, and may be viable alternatives to it. The performance of the developed scheduling technique is then carefully analyzed and verified through simulations under various channel models. In order to apply them in real systems, these algorithms are first proposed for continuous rate transmission. Modified versions are then developed for finite rate transmission and limited feedback resources. Lastly, we analyze throughput of heterogeneous relay OFDMA systems using CDF scheduling with partial feedback. The scheduling problem is even more challenging with the incorporation of relays because of the different coherent time on their two hops. The CDF scheduling algorithm is modified to satisfy short-term fairness among users. In addition, performance of different feedback schemes in a wideband multi-user system are compared. Among the considered schemes, thresholding feedback is numerically shown to have the lowest feedback requirement, given a certain probability of feedback availability