LSMW is basically designed for functional consultants who do not do much coding but need to explore the functionality while BDC is designed for a technical consultant.
LSMW offers different technique for migrating data: Direct input, BAPI, I-Doc, Batch input recording while BDC basically uses recording.
LSMW mapping is done by SAP while in BDC we have to do it explicitly.
LSMW is basically for standard SAP APPLICATION while BDC basically for customized application.