ב-29 בדצמבר 1889 נוסדה חברת-הבת שיועדה להקמת הקו בשם "חברת הרכבת העות'מאנית מיפו לירושלים וסעיפים". נבון הוכנס לחבר המנהלים של חברת הרכבת, שכלל כמה משקיעים צרפתיים. החברה הצליחה לגייס הון של כ-4 מיליון פרנק במניות וכ-10 מיליון פרנק באיגרות חוב. רוב הכספים שזרמו אל החברה הגיעו מכמרים שהשקיעו בה את ממונם הפרטי. מלאכת התכנון המפורט של המסילה והבנייה עצמה הוטלו על חברה צרפתית אחרת שנקראה "החברה הפריזאית לעבודות ציבוריות ולבנייה". עבודות הנחת המסילה החלו ב-30 במרץ 1890 בטקס חגיגי שנערך ליד יאזור. קשיים בהשלמת המסילה בהרי ירושלים דרשו השקעות נוספות (נבון גייס יזמים נוספים מבלגיה, משווייץ ומגרמניה שישקיעו בחברה, ובייחוד השקיעו בחברה חוגים קתוליים צרפתיים שראו במסילת הברזל אמצעי עזר לצליינות הנוצרית לירושלים). כוח האדם במפעל הנחת המסילה הגיע רובו ככולו ממצרים (חלקם מצאו בו את מותם בשל מגפת קדחת). חומרי הגלם למסילה, כמו גם הקטרים והקרונות, נקנו מחברה אמריקאית שפשטה רגל, והובאו באמצעות שלוחה קצרה שנסללה מנמל יפו לתחנת הרכבת יפו. העבודות התנהלו ברציפות במשך כשנתיים וחצי עד לסיומן המלא בקיץ 1892, כאשר כבר באמצע 1891 החלה לפעול מסילת הברזל יפו - רמלה.
תוואי המסילה.
המסילה נמתחה מתחנת הרכבת יפו לכיוון צפון-מזרח, במקביל לרחוב אילת ודרך יפו בתל אביב של ימינו. היא עברה ברחוב הרכבת ופנתה לכיוון דרום תוך שהיא מתקדמת במקביל לנחל איילון (ואדי מוסררה). משם נמתחה המסילה לכיוון דרום-מזרח דרך עמק לוד אל תחנות הרכבת לוד ורמלה. משם פנתה המסילה מזרחה לאורך נחל שורק דרך תחנות תפעוליות ליד הכפרים הערביים סג'ד, דיר-אבאן, ובתיר. הרכבת המשיכה לטפס בין הרי ירושלים ב"שביל החמורים", דרך עתיקה שהובילה אל העיר, לאורך יובל של נחל שורק הקרוי נחל רפאים. בעמק רפאים הצפינה המסילה עד תחנת הרכבת ירושלים (שנבנתה בסמוך לחאן הירושלמי). המסילה, רוחבה 1000 מילימטר, נמתחה לאורך 87 קילומטרים וחלפה מעל 176 גשרים, שבעה מביניהם גשרים ממתכת. הנחת המסילה הסתיימה באוגוסט 1892. יחידה לכל אורכה, אפשרה המסילה תנועה של רכבת אחת בלבד, מירושלים ליפו או מיפו לירושלים. השימוש ברוחב הצר יחסית איפשר חיסכון בהוצאות הבניה, בעקבות היכולת לסלול את המסילה עם עקומות חדות יותר.
תוואי נחל שורק הועדף על פני תוואי נחל האלה ומעלה בית חורון בשל קיומם של מקורות מים לאורכו (חיוניים להפעלת קטרי קיטור), והעדר הצורך בחציבה משמעותית לאורכו. בנוסף נחל שורק הוא מפותל ביותר, דבר ההופך את תוואי המסילה לתוואי נח בעל עליה מתונה, אך ארוך יותר.
מסילת הרכבת שחיברה בין יפו לירושלים הייתה המסילה הראשונה במזרח התיכון מחוץ למצרים וטורקיה, היוותה הישג טכנולוגי ותחבורתי עבור ארץ ישראל העות'מאנית שנחשבה לאזור נחשל. משך הנסיעה מיפו לירושלים קוצר משמעותית - בכרכרה ארך המסע יום וחצי וחייב חניית לילה, בעוד ברכבת הוא ארך בין ארבע לשש שעות. היה זה אף הישג אישי של יוסף נבון כיזם עסקי, על אף שהיה כרוך בקשיים כלכליים כבדים. על הישגו זה הוענקו לו התואר "ביי" מהסולטאן העות'מאני עבדול חמיד השני, אות הלגיון הצרפתי ואותות כבוד מקונסוליות אנגליה ופורטוגל.
חנוכת המסילה.
ב-ה' בתשרי תרנ"ג (26 בספטמבר 1892) יצאה הרכבת הראשונה מיפו לירושלים כשהיא עטורה בדגלי האימפריה העות'מאנית. משך הנסיעה בקו החדש היה כארבע שעות. בטקס חנוכת מסילת הברזל נכחו שליח מיוחד מטעם סולטאן האימפריה העות'מאנית, מושל מחוז ירושלים מטעם האימפריה, הקונסולים בירושלים ועיתונאים רבים.
התייחסותו של אליעזר בן-יהודה.
אליעזר בן-יהודה ראה בבניית הרכבת סמל לניצחון הנאורות ובפרט של תנועת ההשכלה היהודית על הקהילות המסורתיות ששלטו אז בירושלים ושנאבקו במאמציו לתחיית הלשון העברית והתחדשות הלאום העברי ונגד חידושים בכלל. כמה שבועות לפני טקס הפתיחה פרסם בעיתונו "האור" מאמר על אודות הגעתה לירושלים של "מכונת הקיטור על מסילת הברזל". בן יהודה פרסם גם שיר-הלל שכתב לרכבת (עליו חתם בשם העט "המאור הקטן"):
יחיאל מיכל פינס הציע לאליעזר בן-יהודה שם עברי ל"סוס הפלדה". כמשקל המילה המקראית "גמלת" (שפירושה הוא שיירת גמלים) הציע לו את המילה "עגלת" (כלומר, שיירת עגלות). בן יהודה קיבל את המשקל שהציע פינס, אך העדיף בסיס אחר. כך טבע את המילה החדשה "רכבת" (שיירת רכב).
השימוש במסילה - עד 1948.
עם פתיחת קו הרכבת יפו-ירושלים הנסיעה בו ארכה ארבע שעות, שעתיים מעל התכנון המוקדם. מדי יום יצאה רכבת נוסעים אחת בכל כיוון - בבוקר מירושלים ואחרי-הצהריים מיפו. כשנתיים לאחר מכן, משך הנסיעה התארך לשש שעות. בשנת 1913 המסע ברכבת שוב ארך ארבע שעות, והדבר איפשר את הפעלתן של שתי רכבות מדי יום בכל כיוון. הנסיעה האטית הולידה בדיחה שברכבת נתלו שלטים שהזהירו את הנוסעים שלא לרדת לקטוף פרחים בזמן הנסיעה. אנריקו לואיג'י פסטה, חוקר טבע שביקר בישראל, יצא ב-14 במרץ 1893 לכיוון ירושלים ותיאר את הנסיעה כקשה ומטלטלת עד כי התחרט שלא יצא לירושלים רכוב על סוסים.
בשנות ההפעלה הראשונות התגלו קשיים תפעוליים שונים לצד אי־כדאיות כלכלית, אך במשך הזמן עלתה ריווחיות הרכבת. לצד רכבות הנוסעים (שתרמו כ־60% מההכנסות) פעלו בקו גם רכבות משא, שהובילו סחורות לירושלים. תפעול רכבות משא בקו נתקל בקשיים, בשל העובדה שרכבות המשא מירושלים ליפו נותרו ריקות. תפעול הרכבת היה מותנה באספקת מים בנקודות שונות בתוואי המסילה לצורך יצירת הקיטור הדרוש להנעת הקטר, דבר שהיווה קושי תפעולי בתקופות יבשות. היה צורך גם בריכוז מצבורי עץ יבש לצורך חומר הבערה ליצירת הקיטור. למרות מהירות הנסיעה האיטית של הרכבת (כ־25 קמ"ש), הנסיעה בה בין יפו לירושלים הייתה נוחה ומהירה בהרבה מאשר הנסיעה בעגלות, ועל כן הובילה הפעלתה עד מהרה למשבר קשה בקרב בעלי העגלות. בעוד בעלי העגלות ניסו להוזיל את המחירים על מנת למשוך את האוכלוסייה הענייה, פתחה הרכבת מחלקה שלישית כתחרות על מגזר זה.
עם פרוץ מלחמת העולם הראשונה נמצאו האימפריה העות'מאנית וצרפת משני צדי המתרס. מסילת הברזל הופקעה מידי החברה הצרפתית שהפעילה אותה והקו הושבת. המסילה שבין יפו ללוד פורקה, על מנת לסייע במאמץ סלילת המסילה המזרחית, שנבנתה מטולכרם בצפון ארץ ישראל לכיוון באר שבע וחצי האי סיני, מסילה שנועדה לסייע למאמץ המלחמתי הטורקי־גרמני לכיוון תעלת סואץ. המסילה הגיעה רק עד לקוסיימה שבחצי האי סיני משום המהפך במלחמה - מעבר הבריטים למתקפה לכיבוש חצי האי סיני וארץ ישראל. על רקע זה נבנתה בשנת 1915 ואדי צראר (כיום, במפגש הנחל עם כביש 3), היא תחנת 'הצומת', נקודת המפגש של המסילה המזרחית עם מסילת יפו - ירושלים. בשל כך בוטלה תחנת סג'ד הסמוכה לה. חלק המסילה שלא פורק (מלוד לירושלים) הורחב במהלך תקופה זו מרוחב של 100 ס"מ לרוחב של 105 ס"מ, שהיה הרוחב הסטנדרטי במסילות שנסללו עד אז במזרח התיכון.
ב־1918, לאחר כיבוש ירושלים על ידי הבריטים, נבנתה מסילה צרה סמוך לקצה הקו לכיוון אל־בירה, שנועדה לסיוע למאמץ הבריטי מצפון לירושלים. בשל הצלחת הבקעת קו ההגנה הטורקי וההתקדמות המהירה של הכוחות הבריטים התבטל הצורך במסילה, והיא פורקה בסוף 1918. במהלך המלחמה, לאחר כיבושה של יפו, נסללה בזריזות על ידי הכוחות הבריטיים מסילה צרה ברוחב 60 ס"מ מנמל יפו ועד תחנת לוד, על תוואי המסילה הצרפתית שפורקה על ידי הטורקים, על מנת לסייע לוגיסטית לכוחות הלוחמים. המסילה שימשה להובלת כ־700 טון ציוד ליום בתקופת המלחמה. בצומת סרונה, נקודה שבה נבנתה לאחר מכן תחנת הרכבת תל אביב ליד בית הדר, התפצלה מסילה צבאית צרה שהגיעה לאזור גלילות, ונועדה לסייע למאמץ הצבאי הבריטי. עם התקדמות הכוחות צפונה פחתה חשיבותה של מסילה זו, והיא פורקה.
בהמשך מלחמת העולם הראשונה ולאחר סיומה, נסללה מחדש המסילה לכל אורכה לפי הרוחב "התקני" (שהיה רחב יותר - 1435 מילימטר). בסתיו 1920 הושלמה הסבת קטע יפו-לוד. תחילה נוסף למסילה פס שלישי, על מנת לאפשר שימוש בציוד בריטי וציוד שלל טורקי גם יחד, שהותאמו לרוחבי מסילה שונים, ובשלב מאוחר יותר פורק הפס שאיפשר תנועת ציוד מותאם לרוחב צר.
עם החלת המנדט הבריטי, הקו הופעל ותוחזק על ידי הרכבת המנדטורית (החברה הבריטית שניהלה את פעילות הרכבות בשטחי המנדט), לאחר תשלום פיצוי לבעלי המניות של החברה הצרפתית שממנה הופקעה המסילה. הקו שהחל להיסלל בימי העות'מאנים נמתח בימי הבריטים עד קהיר שבדרום ועד ביירות שבצפון. כך קושרה מסילת הרכבת יפו-ירושלים למסילת קהיר-ביירות ולמסילת רכבת העמק, שכולן הופעלו על ידי הרכבת המנדטורית.
בין השנים 1946–1947 ספגה המסילה פגיעות רבות כתוצאה מפעילות חבלנית, הן מצד כנופיות ערביות שפעלו במרחב פרוזדור ירושלים והן מצד חברי המחתרות שהתאגדו לתנועת המרי העברי.
1948–1998.
בשנת 1948, בעיצומה של מלחמת העצמאות פסקה תנועת הרכבות לירושלים בשעה שהעיר הייתה נתונה במצור. לאחר המלחמה, קטעים מן המסילה נשארו בידי הלגיון הירדני. בעקבות הסכמי רודוס שהסדירו את הפסקת האש שלאחר המלחמה, הוחזרו קטעי המסילה לידי ישראל. קו יפו-ירושלים הוחזר לשימוש ב-7 באוגוסט 1949, אז עלתה לירושלים בפעם הראשונה רכבת ישראלית, שהכילה מטען סמלי של קמח, מלט וספרי תורה. ב-2 במרץ 1950 חנכה רכבת ישראל שירות נוסעים סדיר בין חיפה לירושלים דרך המסילה המזרחית, כאשר קשר הופעל בין תחנת תל אביב דרום ותחנת לוד.