For we must all appear before the judgment seat of Christ, so that each one may receive good or evil, according to what he has done in the body. (2 Co 5:10)
St. Paul is not talking about non-Christians here. He is talking about himself and the Corinthian Church (and by extension about all of us). And he says that we will be rewarded or punished based upon our deeds.
Now some people may object that this implies salvation by works. But that is not what St. Paul says. In the first place we all sin, and we cannot save ourselves from our sins by anything that we do. So we are saved from the punishment we deserve because of our sins by grace alone. On the other hand we are not free to live however we wish when He has forgiven us: “If you love Me, keep My commandments” (John 14:15). The one who sins mortally sins against his love of God, and he will be judged accordingly if he does not repent. Love of God is not a content-free proposition: if we love Him, we will obey Him.