Une base station controller (BSC, en français : un contrôleur de station de base) est un élément du réseau GSM dont le rôle est de commander un certain nombre d'antenne-relais GSM (ou BTS, et ce jusqu'à plusieurs centaines). À leur tour, plusieurs BSC sont reliées à la hiérarchie supérieure du réseau mobile, le Mobile service Switching Center (MSC).
Le lien entre un BSC et un MSC s'appelle lien A, celui entre un BSC et une BTS s'appelle lien Abis (lien à 2 Mbit).
Si de son côté, la BTS est chargée de la gestion physique du lien radio, le BSC sera la partie intelligente concernant ce lien : c'est lui qui décide de l'activation/désactivation d'un canal vers une station mobile, qui décide de la puissance d'émission des BTS et des MS (Mobile Station) et qui gère les changements de cellules (handover), la synchronisation de l'heure des BTS. Si ce handover s'effectue entre deux BTS qui sont reliées au même BSC, ce dernier effectue le handover tout seul (handover intra-BSC), sinon il s'agit d'un handover inter-BSC ou handover inter-MSC qui fait appel au(x) Mobile service Switching Center(s) (MSC) supérieur(s).
Pour effectuer le contrôle de puissance et les changements de cellule, le BSC collecte et analyse les mesures de performance et de qualité envoyées par les BTS et les MS. Un autre rôle primordial du BSC est de concentrer les flux de données en provenance des BTS. Mis à part en milieu urbain dense, une BTS est rarement surchargée en permanence, l'Abis est donc peu saturé. En concentrant ensemble les Abis sur un nombre plus réduit de liens A en direction du MSC, cela permet une meilleure utilisation des ressources.