is there any difference between commit, print and freeze?
These days, there is a difference. FREEZE is a way to render a
temporary audio file so you can free up system resources(by disabling plugins). Downside is the frozen audio file cannot be edited. PRINT(and COMMIT) will create a new audio file that has processing embedded(IOW, if you commit a track with Melodyne, EQ with cuts or boosts, and heavy compression, the resulting audio file includes all that processing(so its never a bad idea to save the original, even if you think you may not need to revisit it).
Another thing about FREEZE, sometimes, the frozen(temporary) audio doesn't get included if you take a session and move/copy to another system(like if you send a session via Dropbox to a friend in another state to have the add something). Just something to be aware of. Having used both here, I prefer using COMMIT over FREEZE(though I almost always COMMIT up to a certain plugin as opposed to using COMMIT on the entire track(including VOLUME and PAN settings and/or automation)