for example, I use HAL_TIM_OC_Start_IT(&htim3, TIM_CHANNEL_1) to start Outcomparison Interrupt Mode. considering HAL_TIM_OC_DelayElapsedCallback().Will it process parallelly with commands in the main() or first process interrupt then resume to process in the main()?
The main context will stop, either between two instructions or occasionally part-way through a multi-part instruction (such as LDM "load-multiple").
The interrupt will run to completion and then the main context will resume.
For more details read section B1.5 of the ARMv7M architecture reference manual: https://developer.arm.com/documentation/ddi0403/latest (or the equivalent section of the ARMv6M ARM if you are using a Cortex-M0).