Asi es, cuando se hace un insert se realiza un bloqueo de la misma, ahora si quieres hacer un select a esa tabla sin esperar a que termine el proceso puedes agregar a tus queries el hit (with nolock) pero con esto puedes obtener lecturas sucias(datos que no son reales).
Nolock
Ahora el problema aqui es un insert que dura mucho tiempo, cuantos registros estas insertando? como se hace la insercion? no has probado a hacer ese mismo insert por batchs, digamos si insertas 10,000 registros en lugar de tratar de insertalos todos en una misma sentencia, tratar de ir insertando de 1000 en 1000?