In contrast to the case with two concentric Balls which generate the errors when executing ToElementMesh on the RegionDifference, using Cuboids does not generate the error:
Needs["NDSolve`FEM`"];
inner = 10;
outer = 20;
c1 = Cuboid[{-inner, -inner, -inner}, {inner, inner, inner}];
c2 = Cuboid[{-outer, -outer, -outer}, {outer, outer, outer}];
\[CapitalOmega] = RegionDifference[c2, c1];
RegionPlot3D[\[CapitalOmega], PlotStyle -> Opacity[.5]]
mesh = ToElementMesh[\[CapitalOmega], MaxCellMeasure -> {"Volume" -> 1}];
The generation of the mesh is time consuming and especially so as the "Volume" is decreased. One can see that the number of mesh elements in this case is already quite significant:
In[54]:= mesh
Out[54]= ElementMesh[{{-20., 20.}, {-20., 20.}, {-20.,
20.}}, {TetrahedronElement["<" 106250 ">"]}]
All of this suggests a bug in the Ball case....
I also encountered Udo's bug (http://community.wolfram.com/groups/-/m/t/357364) when exploring plots of the above RegionPlot3D.