XOR or add in one time pads? Is there any difference in adding the plain text and key vs using xor instead(apart from the performance improvements)?
There is no security difference; there are a handful of practical ones:


With xor, you can have the same code to do encryption and decryption
With xor, you don't have to pick a 'word size'; a larger CPU can handle 4 or 8 bytes at a time, while a microcontroller can handle 1 byte at a time, without changing the ciphertext
With xor, you don't have to worry about endianness (which you would if you, say, added words modulo $2^{32}$


While these are all minor differences, they all point towards xor being slightly better from a practical standpoint