No, not to be confused with another form of matchmaking.
Matchmaking in video games is the process of automatically finding games for a player, compared to the traditional model of a server browser where players would trawl through lists of games until they found one suitable. Server browsers still exist for some games, especially on PC, but on consoles especially matchmaking is dominant.
Originally developed for Halo 2 back in 2004, it proved so successful it would go on to have a huge impact on the industry.
Server browsers
Similar to browsing a web site or forum, server browsers provide the player with a list of games being hosted, usually filtered according to various criteria. Some typical examples of filters would be current and maximum player counts, latency of the player to the server, the server tick rate, game mode, map selection, and so on. Once the player has found a server they are happy with, they connect to it. Most games using this model would typically allow a player to join part way through the match.
Under this model, players remain on a server until they have finished playing.
Matchmaking
Almost all matchmaking is based around sessions, and may have an optional skill/ranking component. A session is a one-off game, compared to one where players are pulled together and remain in a lobby between games, similar to dedicated servers. There are games where players do remain together and can carry on playing after the end of the first match, but this is less common.
The process starts with a player or group of players picking a playlist. A playlist is essentially a collection of gametype-map combinations. Some typical examples would be a deathmatch playlist, an objective gametype playlist (like CTF), a small teams playlist, and a large teams playlist. Games might also have a 'hardcore' playlist with different rules, or one dedicated to strange and weird gametypes. Under this model, the game developers select the gametype-map combinations themselves, so playlists might not use particular maps, or only use them for a very specific gametype.
Once players decide on a playlist, they contact the matchmaking server who puts together a session. Firstly, it puts players into a pool of people searching for a game in that particular playlist. Back when games were all player-hosted, it would check players could could connect to each other and had decent latency. With modern cloud technology it is more likely to spin up a temporary dedicated server. If there are any ranking filters, they also get applied at this stage.
At the end of the process we have a group of players that have been put together for the purposes of this one-off match, the backend server selects the gametype-map, and the match begins.
Because of all the filtering criteria, matchmaking needs a sizeable population of players. Games themselves also need to be pretty short, usually a maximum of 15-20 minutes to keep replenishing the pool of players looking for a game. If the search drags on, the systems typically widen the selection criteria, creating lower quality matches. This can create a feedback loop where player populations naturally decrease over time, this creates worse matches and longer wait times, and so more players then stop playing.
Ranking systems
One benefit of matchmaking is the ability for it to determine how good a player is, and use this to create more balanced match ups. On a dedicated server you're generally put against random players of differing skill levels which may result in some being stomped, though the game might rebalance teams at the end of a match. Matchmaking however has the chance to try to create a balanced match before the game begins.
The exact implementation of ranking systems will vary, some systems will rank players individually (your team might have lost a deathmatch game, but you were the best player and came in 1st), some will rank based on the team's position (you were the best player but lost, sucks to be you). The first ratings were typically based around the Elo rating system, over time they have grown more sophisticated to try to tackle some of these problems, since Elo was never designed for this purpose.
