Arduino To Control Light Intensity
Capability wise, yes arduino running at 16 MHz is more than capable of dimming your incandescent bulbs by phase control method. 

The logic goes like this: You sense the exact time when sine wave crosses zero. You wait for some time (0-10 milliseconds depending upon the brightness you want),  turn the triac ON for like 100 uS and then turn it OFF.

Now 0-10 ms should depend a bit on exact components chosen and you might want to make this range 1-8 ms or so. Having some buffer saves you from running into edge cases which will cause flicker in the bulb.

100 uS is a good number but you can reduce it as well. Check it before you mark it ready for production.

To keep things safe, I (and everybody else) recommend using an optocoupler for zero cross sensing as well as triac driving.

Use this circuit to sense the zero cross: (3.3V will be 5V for you if you are using arduino UNO. No need to change anything due to that.)



And you can drive the triac using this circuit:



From my experience, I recall that arduino running on 8MHz at 3.3V wasn't that good. I saw very slight flicker when focusing too hard but again it could be due to code. It was using less efficient functions like delay and delayMicroseconds. Use interrupts for better performance.