This is one of the most common questions I get asked by non-Catholic family members and friends. This is always the first objection raised to my converting to Catholicism. "Catholics don't allow non-Catholics to receive the communion. Why is that? I can go to any Protestant church and receive communion. Why do Catholics exclude Protestants?"
The main reason that non-Catholics cannot receive Communion at Mass is simply because they are not in "communion" with us. It would be a lie for them to receive the Eucharist, which by doing so states that they believe all that the Catholic Church teaches. If they do in fact believe all that the Catholic Church teaches, then they should join the Catholic Church! Most non-Catholics however do not believe in the Real Presence of Christ and rather believe that the Eucharist is merely a memorial act of remembrance. If that is all they believe, then they can easily obtain that in their ecclesial communities. To receive the Eucharist in the Catholic Church is to enter into a covenant (every time we receive) with Christ and profess, "Yes, Lord, I believe that this truly is your Body,Blood, Soul, and Divinity." It makes no sense for a non-Catholic who doesn't believe this to receive communion. In fact, in their view, if they do make this act without truly believing, it would amount to idolatry and blasphemy. Yet, we as Catholics know for certain by Faith that it is the Body and Blood of Our Lord and we are mindful of what St. Paul said to the Corinthians that if they eat and drink the Body and Blood in an unworthy manner (i.e. without reverence and belief), they eat and drink judgment upon themselves (1 Cor11:27-30). So above all, it is out of concern for the welfare of our separated brethren that we do not permit them to take Communion at Mass. We do not wish that they eat and drink judgment upon themselves! Likewise, the Catholic Church also does not want Catholics who do not follow Church teaching to receive Communion. The Church is concerned with the welfare of souls both inside and outside of her communion.
I find it very curious though that non-Catholics are always so concerned about receiving Communion in the Catholic Church. If the Eucharist is just a symbolic memorial they can easily get that at their own parish, as I stated above. Yet it seems like there is a longing within them for something more. Inside they know that the Eucharist in the Catholic Church is more than just a memorial. There is something substantial to it. They desire it (as they naturally should), but when they can't have it they grow angry and bitter. I truly believe that this is the work of the Holy Spirit moving them from within ever closer to this precious gift that Christ left us of His own Body and Blood. They may not consciously believe that Christ is truly present, but subconsciouly they know the truth. Christ is calling out to them in the Eucharist and beckoning them to union with God which only He can bring. This union He brings in the most definitive way by offering us His own flesh and blood for our spiritual food. Christ truly enters into us. We feast upon this Glorious Lamb of God who gives us life and takes away the sins of the world! Unless we partake of Christ's flesh and blood, we have no life in us. This truly is a hard saying, yes, but to whom else shall we go? For it is Christ alone who has the words of eternal life. And He has expressly told us that whoever eats his flesh and drinks his blood abides in Him, and He in them.
Abide in Christ and join His Mystical Body, which is His Catholic Church!