I know that a certain amount of education is necessary before men can be ordained as a Catholic priest. But are all men that received the necessary education ordained as priests? If not, what is the selection process? And how are they assigned to a specific parish?
Many vocational offices explain this process in detail (the Diocese of Fall River has a good explanation, for example), but I'll try to explain it as best I know.
Before that, there are a few things to keep in mind:
There are two different "tracks": the diocesan track, where you are ordained as part of a diocese, and the religious track, where you are ordained as part of a religious order. You seem to be interested in the former, so this answer mostly answers to that. The processes are similar, it's just a question of where you end up.
Priests are, to put it somewhat bluntly, proxies for the bishop. A bishop cannot perform all the duties required of him for everyone, so the priests act as surrogates, performing many of the functions that are needed to successfully tend to the flock. In many ways, the process is about finding suitable matches for the bishops who need more priests: this is sort of the short answer to your question (the bishop decides).
One way to understand the full Ordination process and how the bishop makes his selection is to think of it like a very long, very structured introspection. Accepting the Sacrament of Holy Orders is a huge deal, one that will shape the rest of a person's life. The time in Seminary Formation and up to the Rite of Ordination into the Priesthood is basically the trial run period to see whether a person really, truly wants to commit to the life of a priest: committing one's life to the Church, taking a vow of celibacy, etc.
The process starts off something like a Ph.D. track education in academia: when you go towards getting your Ph.D., you usually find out that you're interested in it during undergraduate school, then you go through an application process, then a core education (Master's) process, then you move into the meat of actually getting a Ph.D. (doctoral thesis).
Similarly, the path to ordination starts off with talking to a priest or other members of one's parish about being interested Holy Orders. The person will then apply to the diocese office of vocations, usually answering some basic questions about why they want to begin the process (example from the Archdiocese of Portland, PDF).
The vocation director will then make contact to begin the application process. This usually consists of a series of interviews, getting letters of recommendation, background checks, and other vetting processes to make sure the person has a high likelihood of succeeding.
Once accepted, the Bishop assigns the person to a seminary (with the recommendation of the vocations director) where they begin the process of Seminary Formation: they'll learn everything they need to know to begin the transition into the clergy. Simultaneously (if they don't already have it), they'll be receive the education to get a Master's Degree in Divinity (generally a requirement to receive Holy Orders).
They'll also begin the process of introspection and guidance to determine whether or not this is something really want to do and whether or not God is calling them to Holy Orders. This is done under the guidance of the vocation director who recruited them.1
Towards the end of Seminary Formation, men are ordained to the diaconate2 as a transitional deacon: similar to a permanent deacon, but with the understanding that they will soon be ordained a priest (usually in about 6 months).
It's at this point the bishop assigns them to a parish. This is sort of a "last chance" period to change one's mind and to start helping with the Liturgy in a real-world setting. The person is still in Seminary, but it's something like a "work-study" or "student teacher" program: he'll split his time between completing Seminary and doing the duties of a deacon.
At the end of Seminary, successful candidates undergo the Rite of Ordination into the Priesthood. Amongst other activities, the bishop will ask them a series of questions to make certain they'll ready to undergo the call of Holy Orders, but this is largely a formality: the Seminary Formation process was intended to weed out the candidates who would not make a good fit long before this moment. Think of it like a "swearing in" ceremony: candidates are going to know beforehand the answer is "yes", "I do", or "I will" to every question asked.
After which, the bishop will consecrate the candidates via the Laying on of Hands and ordain them into the Priesthood.
Once Ordained, priests serve under the bishop. The bishop can work with other bishops to transfer priests between dioceses depending on the needs of the Church.
1 It's important to note here that not everyone who goes through this process becomes a priest: many are never called by the Holy Spirit to receive Holy Orders and withdraw from the process within the first couple of years of Seminary.
2 If you're not familiar with the term, a Deacon is someone who is able to perform many sacraments one usually associates with a Priest: conduct sermons, baptize, and oversee marriages. But they can't do things like confer Holy Orders themselves or consecrate the bread and the wine used in the Eucharist (but they can help administer it).
Mark's answer was exceptional an complete so I'll just add an anecdote I heard a few weeks ago relating to the way priests are formed and trained.
While they're going through schooling (seminary) they're consistently being tested in ways they're not used to being tested. For instance, man who doesn't do well with death is put in a hospital and a man who doesn't do well with kids is put in a school. So the positions they have later in their priesthood are probably informed by their performance in priestly formation.
Also, when a priest (diocesan priest) is starting out he's usually not the one left in charge all by himself, so more than likely he's going to go to a place where there both is a need for another priest and that need doesn't need to be filled by an experienced priest. So new priests don't usually get sent out to Podunk Ohio until they're a few years into it.
Beyond that, it's a crapshoot and only the Bishop (who is the head of quite a number of parishes generally covering a geographic area) gets to decide based on his preferences. Often times stellar priests are given the more challenging assignments (and bigger parishes) but you can't really judge a priest by the size of his congregation. If a Bishop really likes a priest he'll make him a Monsignor (which has a slightly ironic meaning). From what I can tell, and this is speculation because it can't really be documented anywhere, Bishops favor obedience, prayer and managerial skills. So, in general those factors will determine the direction and duration of a given priest's stay.