It's good to have discussions like this. Just because we have a match doesn't mean it's the best system. Or perhaps it can be improved.
As has already been mentioned, the residency job market is somewhat different than other job markets. The number of spots is slightly higher than the number of US grads. Each program can only take an exact number of interns -- one extra isn't allowed. Residency defines your career and specialty.
Every system has it's pluses and minuses. Let's assume we're comparing the current match process to a free market system. The possible benefits of a free market system are: 1) less interviews (and expenses) for those applicants who know what they want, interview early, and get an early position - more time to move, cheaper, etc, and 2) salary negotiation by residents as part of the application process.
#1 is a definite possibility for some people. For those candidates who are very competitive for the spots they are applying to, and are certain that they know where they want to go, or for applicants whom only care about their field (i.e. want orthopedics, and don't care at all about where they go), then it might work out better this way. The very obvious example is the student who wants to stay at their home institution -- they could save lots of time and money if an early interview and agreement was made. The problem is that there are many negatives to this solution:
A. Any applicant who is less competitive is likely to get no offers early. Programs will offer to the more competitive candidates first. Less competitive candidates will wait and wait, without any clear endpoint.
B. Students will have difficulty applying to two different fields. Applying to both Ortho and Gen Surgery, for example. What would you do if you get a Gen Surgery spot offered early, but want to wait for a possible ortho spot, but don't want to lose the Gen Surgery spot?
C. In this system, it becomes critical to interview as early as possible. The later you interview, the worse your chances. This could be mitigated by a date before which programs cannot offer spots, but in that case candidates would need to continue interviewing so would limit the cost/hassle benefits of a free market system.
D. You could "accept" the Gen surgery spot, then wait to see if something better comes along, and "drop" it if so. But residency is a JOB, not a school. When you sign an employment contract, that's a legally binding decision. I stop looking for people to fill your spot because you have accepted it, and I start the process of getting you licensed and credentialed. Although walking away from a job a WalMart or the local ice cream shop may be "OK", this is the world of professional medicine. Once you've signed an employment contract you need to hold up your end of the deal, or the contract will state what the costs (to you) are -- usually the costs of hiring a new person, plus the additional cost of hiring someone temporarily to fill the vacancy. My point is that this is an unrealistic option -- you can't do this like you might have done with your medical school application process.
#2 simply isn't true, or has nothing to do with the match. Resident salaries are set by the GME office. I have no control over them. I guess it's possible that the GME office will simply give me a salary budget and let me divide it however I want -- but this creates so many downstream problems it is simply not worth it. Plus there would be a financial incentive for me to offer less to candidates up front, to save money to get people at the end. If residents are interested in improving their salaries, then unions are probably more effective than individual salary negotiation (but come with their own set of problems).
As for the match "favoring candidates", that's complicated. From a mathematical / algorithm standpoint, the match favors applicants by deciding all ties in their favor. However, this happens a vast minority of the time, so really is of little practical value. As above, the match process minimizes the amount of "unknowns" in the process -- you know exactly what day you find out where you are going, don't need to worry about when you interview, can interview at several types of programs, etc. The match gives the best "mathematical" outcome. The problem is that the match doesn't necessarily give you the best "emotional" outcome. For example, if there was a match in the medical school application process, you interviewed at 10 schools, ranked all 10, and then matched at your #10. Compare that to interviewing at 10 schools, getting into your least favorite (at some unclear date), and slowly getting 9 rejections. Both are exactly the same outcome. But many would say that the latter would "feel better". Much depends on whether you want all of the emotional process lumped together into one single moment, or spread out.
I do agree that there has been "application inflation" in the residency application process. Every year I get more and more applications -- because people are applying to more places. The average number of applications per field is published, and no one wants to be below average. That just makes the next year average higher, and up it goes. So it becomes harder to know who really wants to come to us, and who is "just applying to see what happens".
There are plenty of horror stories about what it was like before a match. The IM fellowship match is new (for many fields), and before the match it had all of the above problems. One of my residents was interested in an IM fellowship, and they wanted to stay locally. They interviewed somewhere else first, and on the drive home the PD called them to offer them the spot. They wanted an answer on the phone. He negotiated for 24 hours, to talk to his wife about the move. He called the PD at our program and told him the situation. Was interviewed the next day (before any interviews were actually scheduled) and offered the spot. We only had one spot, so the fellowship PD contacted everyone scheduled for an interview, told them the position was filled, sorry. All of those people lost any money they spent on plane tickets (or had to pay for rebooking fees), and they all panicked calling programs to try to get earlier interview dates. This could have been avoided if the fellowship PD had talked to the resident involved and simply offered him a spot before, but we saw this exact issue push the fellowship application process earlier and earlier. Just before the match was put in place, some IM fellowships were asking for applications at the end of the intern year, a full 2 years prior to when fellowship starts. And it was becoming more likely that programs would just take only candidates from within their own programs, as anything else was crazy.
Can we make the match better? Maybe. Perhaps some sort of "early decision" like college, where you only can apply to a single program. But that just shuffles the winner/loser deck again. Students would need to decide which was the "right" program to apply early to, to avoid "wasting" their chance.