Yes, recompiled is needed, but not necessary 1 to 1. So modification may be required especially if instruction is hardware specific. This is why in announcement also mention emulation mode although native mode is preferred.
This means some applications change may be required to enjoy full hardware advantage. So it will takes times especially from user point of view as it means you need to buy new version to enjoy it.
Yes and No. That is why Rosetta exist. I live through the age from a PowerPC machine to an Intel machine when on Mac OS X. The transition is very smooth.
And because in this case Apple has already mentioned they will still be rolling out Intel chipset products, so you can expect the transition+support be much longer than 2 years because of the support they will need to provide for the high end products.
You may want to read up on what JIT means and also how often these days adaptations of machine specific optimizations are done by compilers. No doubts there may be recompilation requires for better performance, that is why Universal binaries exists to allow vendors to take advantage of both platforms on end-users machines.
All in all, the solution to the transition is a 2 pronged approach, one is Universal binaries for both architectures, the other is emulation with JIT. I have transited through these phase previously once myself and I must say the experience has been rather seamless. I am using more than just a simple Mac user during that time, using terminals and fink ports, which are linux packages already.
Some existing software will have new versions, but not necessarily new purchases. These days so many softwares are on subscription base, it makes it the transition even more fluid since end-users are already paying for it monthly or annually. If Apple has done it once with earlier tech, I don’t foresee this time will be much worse
