Have a look at Near (Analysis) (I linked to the 10.0 documentation, since you didn't specify your version).
If you choose the
location option, the tool will edit the intersect positions into the milemarkers' table, into two new fields
NEAR_Y. If you want to create a new feature class using these coordinates, I don't know if there's a tool for that, but if you can handle python, you can definitely do it there. Again, I don't know which version you have, but for 10.0 (with arcpy) this should work:
# first parameter; the geodatabase where to store the new feature class
db = arcpy.GetParameterAsText(0)
# second parameter; the feature class with the mile markers
milemarkers_layername = arcpy.GetParameterAsText(1)
# third parameter; the name of the feature class to create
intersects_layername = arcpy.GetParametersAsText(2)
# create the new feature class
arcpy.CreateFeatureClass_management(db, intersects_layername, 'POINT')
# create the cursors
mCur = arcpy.SearchCursor(milemarkers_layername)
iCur = arcpy.InsertCursor(db + '/' + intersects_layername)
for mRow in mCur:
iRow = iCur.newRow()
# read the values given by the Near tool
near_x = mRow.getValue('NEAR_X')
near_y = mRow.getValue('NEAR_Y')
# create a new point with those values, then add it to the new table
iPoint = arcpy.Point(near_x, near_y)
iRow.shape = iPoint
# free up both layers
del mRow, mCur, iRow, iCur
I'm not at work right now, so I can't test that (the catch-22 being that when I am at work, I have to be doing other things than hanging around SO), but I did my best to check it for errors. Hopefully someone can verify it for me.
Near (Analysis) requires an ArcInfo license.
Edit: by the way, don't set the search radius too high, or the search might take ages (depending on the amount of data you have).