In general, buttons are for taking actions, and links are for navigation.
However, form footer buttons are appropriate for submission, cancellation, and stepping back, even though there is a navigation result to those actions.
Links may be used for localized actions, such as expanding collapsed text where a button would be too prominent.