Pardon is different from expungement. Pardons come from the governor. Citizens ask the courts to expunge. Expunging will not protect you from federal charges, even though it might restore your state gun rights - in some states.
Expungement typically only comes after a pardon or dismissal of a charge. It has to do with whether the record of conviction or arrest is viewable by the public or not. If a court vacates the conviction and expunges it, no, it's not a pardon, but it's like it never happened because the charges are dismissed. I know people that had an expungement of a felony charge and they have their full firearm rights, along with a concealed carry permit in Oklahoma.
Pardons come from the governor, yes. Expungements and dismissals come from the court that issued the verdict. If a DA agrees to dismiss and vacate the conviction, it's like it never happened, thus restoring your rights, and yes, protect you from federal charges as the law views it as if it never even happened. At that point, you are no longer "convicted". Both ways work, they are just different ways to the same goal.
You are correct only in the sense that an expungement ONLY will not restore your rights. I don't think there is such a thing as the ability to restore your state firearm rights, but not your federal. If you are ineligible to possess a firearm according to federal law, no state law can trump that. But no court is going to expunge a felony conviction without a pardon or agreement from the DA to dismiss the charges, or vacate the conviction. Each state has different rules on this though.