Arduino to Arduino Serial Communication

I would remove those delays() and lower the softserial baud rate to 4800.
Also notice that print(i) will output 1 to three ascii chars, while read() will return just one byte at a time.

As a transmission test sketch I'd use something like this:

void loop() {
static char ch = 'A';
softserial.print(ch);
ch++;
if (ch > 'Z') {
ch='A';
}
]

so you can see if the receiving end misses a beat.

my 2 cents.