We try our best to not use SFDC campaign flow steps in Marketo as each step uses 1 API call per lead. If you have a large database, this can cause problems. However, we do use the "Salesforce Campaign Sync" feature on the Marketo program that does the sync during the bi-directional sync session instead of instantaneously by the flow step.
Depending on your use case, it could still make sense to use SFDC campaigns for reporting purposes in salesforce. Otherwise, you dont need to if you do all your campaign tracking in Marketo. Sometimes sales reps like to look at all the campaigns that lead has been in as well, but you can also use marketo sales insight and interesting moments instead.