As discussed in this thread on the EB2 forum, the team discovered that certain Siege Battle CTDs were caused by overall file and folder path length. Any combination of the two in excess of 127 characters resulted in a Siege Battle CTD (in certain climates).
Rather than reprise the discussion over here, suffice it to say that we have received enough reports to indicate that players of EB1 could also benefit from reducing game folder path length. It's much more complicated (sadly) for Steam users, but everyone else should have no problem changing the path length from something like C:\Program Files (x86)\Rome Total War\ to C:\EB1 (which is a reduction of 31 characters - not small given that EB has some very long unit model and file names)
Anyway, if you have been experiencing random CTDs (not necessarily just in siege battles) and you can easily reduce your path length, the recommendation is to do it!
Bookmarks