I didn’t have any issues with copying the layout template to R23 (and it’s fairly extensively modified). Though, of course it needs to be updated to include any new functionalities. R23 provides several layouts; you may need to create a one for UV editing if you had any previous special layout for that, due to the extensive changes in the UV area.
The shortcuttable could be copied as well. This one is human-readable so you can look into it, although this is made difficult by the fact that many functionalities are identified by their internal ID and not by some intuitive constant name. Here too you would have to add the shortcuts for any new functionalities.
Most problematic in the past were the schema data. The previous big GUI rewrite had added several graphic elements that reside in single images; it is fairly difficult to identify and recreate them, especially since there doesn’t seem to be any documentation on that. I have given up on writing my own schemas; it’s just not worth the effort.
The icons can be found in the interface_icons_2x.tif image file. There used to be a file with the icons in half the resolution but I can’t find that for the R23 any more, so perhaps all icons are now scaled. In the past I have changed some icons for better recognizeability, but meanwhile Maxon has fixed the worst offenders, and I don’t find it worth my while any more.
Preferences I recreate for every version (this is the most work, as the colors are stored here). Copying them from the previous version has proven to be… unadvisable. Sadly you cannot separate the color definitions out of this file.
The Python scripts (and Python plugins) are most likely not to work any more as Python has been updated from 2.7 to 3.7, and some commands now throw errors. Only some simple scripts can be transferred (if they are unaffected by the Python version change). All others need to be rewritten.
Plugins require at least recompilation for R23, or they will not work at all. Fortunately, in most cases this should not take too much work. The majority of my own plugins recompiled without any change.
I would not recommend linking the same script or plugin directory between several C4D versions, even if it would work (and with R23, it doesn’t).