#arcpy.CalculateField_management("UT_CROSSING","DISCREPTION","!COMPANY!" + " " + "!LOCATION!" + " " + "!TYPE!" + " " + "!SIZE!" ,"PYTHON")
# this gives the following string, which isn't a valid python expression, into CalculateField:
#expr = "!COMPANY! !LOCATION! !TYPE! !SIZE!"
# What you want to do is something like this:
# Notice that the expression is wrapped in single quotes
expr = '!COMPANY! + " " + !LOCATION! + " " + !TYPE! + " " + !SIZE!'
# even better
expr = '" ".join([!COMPANY!, !LOCATION!, !TYPE!, !SIZE!])'
arcpy.CalculateField_management("UT_CROSSING","DISCREPTION",expr ,"PYTHON")
Or use Arcade:
expr = 'Concatenate([$feature.COMPANY, $feature.LOCATION, $feature.TYPE, $feature.SIZE], " ")'
arcpy.CalculateField_management("UT_CROSSING","DISCREPTION",expr ,"ARCADE")
Have a great day!
Johannes