有名合同和无名合同的区别是法律或经济生活中是否有明确的名称。有明确的名称的就是有名合同,没有明确的名称的就是无名合同。具体的有名合同包括借款合同、买卖合同、担保合同等类型。
承揽合同不是无名合同,是有名合同,其名字就是承揽合同。无名合同就是法律上没有赋予其一定名称的合同。即有名合同以外的其他合同。有名合同是指法律上或者经济生活习惯上按其类型已确定了一定名称的合同,又称典型合同。