Not much difference, it's a small difference in meaning, hard to explain.
If I say I'm walking on the street, it's emphasising my footwear touching the concrete surface, "on" the surface of the street", so I could say my shoes can't handle walking on the street. But "in" still works fine here, it just doesn't emphasise the contact with the surface so much. If I say I'm walking in the street, it's emphasising me walking between the houses on either side of the street, "in" the area of the street, so I could say it's very dark and hard to see where I'm going when I'm in the street after 10pm. I would never say "I'm walking at the street" because that's bad grammar but I could say "I'm currently at the street you mentioned" and it's emphasising the proximity, "at" the named location.
In and On are generally used interchangeably but have a slightly different emphasis as mentioned above, and At is not really used this way but can be used for specific street names.