Validating a StreamingPin
_pin overflow

You're relying on the caller to prevent a buffer overflow.  Consider if the calling code was this:

var sp = new StreamingPin("PinNumber");
var input = "p2gsvpinnumberPinNumbessfeER#VvsdinNumberPinNumberdfvlj4kF4wfV";
var lastIndex = -1;

while (!sp.IsCorrect)
{
    lastIndex++;
    Console.WriteLine(input[lastIndex]);
    sp.ProcessCharacter(input[lastIndex]);
}
sp.ProcessCharacter(input[lastIndex]);


Your ProcessCharacter method doesn't check that accessing _lastCorrect + 1 isn't going to overflow _pin.  This seems like the responsibility of the StreamingPin class.  I'd say, if they start adding letters after a valid pin, it should reset to not correct anymore (rather than throwing an exception that could give the caller information they might not know, such as how long the PIN is).

One way to achieve this would be to add a wrap to the increment:

var currentIndex = (_lastCorrect + 1) % _pin.Length;


readonly

Since you're not updating the pin after construction, I'd also consider making it readonly.