The 'spinning beachball' that indicates a wait for delays appears often when the list of recently used blocks is large.
Among other reasons, if the list of Most Recently Used blocks contains up to the default value of 50 blocks, there may be a delay as all blocks in the list are located.
The BLOCKMRULIST System Variable defaults to 50 in a possible range from 0 to 100. This Most Recently Used list is kept available between drawings.
If any drawings that host the blocks in the block history are deleted or moved, that can cause a lengthy delay as the missing drawing location is searched.
By setting BLOCKMRULIST to 0 or to 10, for example, that stops the searching for missing blocks.
To speed that up, a toolbar button with a custom macro can be made with the CUI command (Customize User Interface). The macro C^C^BLOCKMRULIST;10 will reset the block history to 10, for example.
Then the new toolbar icon can be added to an existing or a new tool palette, for quick access.