Io sono sempre stato del parere che il "resume" è SEMPRE indice di un errore gestito male (o non gestito).
Cosa vuol dire resume / resume next ?, che deve continuare con l'istruzione successiva? a che proposito? allora vuol dire che quella cosa che ha dato errore proprio proprio errore non era (se se ne può fare a meno?.
Un errore va gestito.
Nel blocco di try / catch si entra nel catch per una condizione di errore più o meno specifica.
Sicuramente nel catch NON si esegue dell'altro codice e NON si salta da nessun'altra parte, lo scopo è gestire l'errore o le sue conseguenze.
Se si vuole continuare con l'esecuzione del programma a "prescindere" c'è il blocco finally che viene eseguito comunque ma INDIETRO NON SI TORNA come fa il resume.