I would take Williams. For no other reason then that fact that he is younger. It is my guess that Smith or Williams will take a 5 to 6 year deal with guaranted money associated. The chances of Smith playing out that contract, at a high level of performance is less likely then Williams, IMO. At 5 or 6 years, that puts Smith in his 12 or 13th season. Roy Williams would be in his 9th or 10th, which would likely still be very productive for him. Of course, this assumes that neither player suffers a career ending type injury.
In regards to the speed aspects, Smith is probably faster off the line but I don't believe he has better top end speed then Williams does. There are not many guys anywhere who have the same kind of top end speed he has. His 100 speed is world class type speed, according to reports I've read. Having said that, much depends on quickness so you can make that case for Smith. On the other hand, Smith will never be the redzone target Williams will be. Each brings different things.
If you compare the numbers of each player, over the first four years of there careers, Williams has better numbers. Williams is going into the prime of his career. Steve Smith is in the Prime of his career. We can't know how good Williams will be but we do know how good Smith is and that's pretty dang good. One thing I think you need to consider is TD production. In 7 seasons, Smith has 37 TDs. In 4 seasons, Williams has 28. That breaks down to a TD every 11.6 receptions. Williams averages a TD every 8.7. That, to me, cleary reflects the Redzone effect I discussed earlier.
Short term, Smith is probably the better choice but long term, which is what we would probably sign for, I think it's Williams.
All things equal, which they never would be, I'd probably take Williams over Smith but at the end of the day, I'd be happy to have either. I would take whichever one we could get a deal done with consider myself lucky to have either on the team.