I know in Oracle you can use DBA_TAB_COLUMNS (or ALL_TAB_COLUMNS). My SQL Server knowledge is very rusty, but can't you use the INFORMATION_SCHEMA.COLUMNS view?
I've said it before and I'll say it again: If you want to speed up your application, don't look at your code, look at your data access. The two slowest things you can do in application development are ...