In my experience, the best way to do this is to:
- Create the EMPTY table
- Create the clustered index (matching your source table)
INSERT using TABLOCK hint for minimal logging
Details are included in this MS Whitepaper.
Creating the table first, then indexing it on the same key as the source eliminates sorting.
If the keys match, TABLOCK is used, and trace flag 610 is enabled, the operation will be minimally logged (logging pages not transactions or rows).
For me this is faster as adding the clustered index after SELECT INTO forces a sort which can be very costly and time consuming.
EDIT:
TF 610 is used solely to control minimal logging behavior when inserting into indexed tables.
I'm not aware of any issues with using it, but MS recommends (rather defensively I think) to test before using.